home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / lisp / kcl / kcl.lha / lsp / setdoc.lsp < prev    next >
Text File  |  1987-06-04  |  155KB  |  4,371 lines

  1. ;; (c) Copyright Taiichi Yuasa and Masami Hagiya, 1984.  All rights reserved.
  2. ;; Copying of this file is authorized to users who have executed the true and
  3. ;; proper "License Agreement for Kyoto Common LISP" with SIGLISP.
  4.  
  5. ;;;;   setdoc.lsp
  6. ;;;;
  7. ;;;;                    Sets doc-strings for built-in symbols.
  8. ;;;;            This file is intended to be loaded into KCL
  9. ;;;;            after initialization and before save.
  10. ;;;;            This file need not be compiled.
  11.  
  12. ;;;;        In the following doc-strings, some phrases come from
  13. ;;;;        Steele's manual and some from Spice code.  But almost
  14. ;;;;        all sentences are tuned for KCL.
  15.  
  16.  
  17. (in-package 'system)
  18.  
  19. (defmacro docfun (symbol kind string)
  20.           (declare (ignore kind))
  21.   `(si:putprop ',symbol ,string 'si:function-documentation))
  22.  
  23. (defmacro docvar (symbol kind string)
  24.           (declare (ignore kind))
  25.   `(si:putprop ',symbol ,string 'si:variable-documentation))
  26.  
  27. (defmacro doctype (symbol string)
  28.   `(si:putprop ',symbol ,string 'si::type-documentation))
  29.  
  30. (docfun * function "
  31. Args: (&rest numbers)
  32. Returns the product of its arguments.  With no args, returns 1.")
  33.  
  34. (docvar * variable "
  35. Holds the value of the last top-level form.")
  36.  
  37. (docvar ** variable "
  38. Gets the previous value of * when KCL evaluates a top-level form.")
  39.  
  40. (docvar *** variable "
  41. Gets the previous value of ** when KCL evaluates a top-level form.")
  42.  
  43. (docfun + function "
  44. Args: (&rest numbers)
  45. Returns the sum of its arguments.  With no args, returns 0.")
  46.  
  47. (docvar + variable "
  48. Holds the last top-level form.")
  49.  
  50. (docvar ++ variable "
  51. Gets the previous value of + when KCL evaluates a top-level form.")
  52.  
  53. (docvar +++ variable "
  54. Gets the previous value of ++ when KCL evaluates a top-level form.")
  55.  
  56. (docfun - function "
  57. Args: (number &rest more-numbers)
  58. Subtracts the second and all subsequent NUMBERs from the first NUMBER.
  59. With one arg, negates it.")
  60.  
  61. (docvar - variable "
  62. Holds the top-level form that KCL is currently evaluating.")
  63.  
  64. (docfun / function "
  65. Args: (number &rest more-numbers)
  66. Divides the first NUMBER by each of the subsequent NUMBERS.
  67. With one arg, returns the reciprocal of the number.")
  68.  
  69. (docvar / variable "
  70. Holds a list of the values of the last top-level form.")
  71.  
  72. (docvar // variable "
  73. Gets the previous value of / when KCL evaluates a top-level form.")
  74.  
  75. (docvar /// variable "
  76. Gets the previous value of // when KCL evaluates a top-level form.")
  77.  
  78. (docfun /= function "
  79. Args: (number &rest more-numbers)
  80. Returns T if no two of its arguments are numerically equal; NIL otherwise.")
  81.  
  82. (docfun 1+ function "
  83. Args: (number)
  84. Returns NUMBER + 1.")
  85.  
  86. (docfun 1- function "
  87. Args: (number)
  88. Returns NUMBER - 1.")
  89.  
  90. (docfun < function "
  91. Args: (number &rest more-numbers)
  92. Returns T if its arguments are in strictly increasing order; NIL otherwise.")
  93.  
  94. (docfun <= function "
  95. Args: (number &rest more-numbers)
  96. Returns T if arguments are in strictly non-decreasing order; NIL otherwise.")
  97.  
  98. (docfun = function "
  99. Args: (number &rest more-numbers)
  100. Returns T if all of its arguments are numerically equal; NIL otherwise.")
  101.  
  102. (docfun > function "
  103. Args: (number &rest more-numbers)
  104. Returns T if its arguments are in strictly decreasing order; NIL otherwise.")
  105.  
  106. (docfun >= function "
  107. Args: (number &rest more-numbers)
  108. Returns T if arguments are in strictly non-increasing order; NIL otherwise.")
  109.  
  110. (docfun abs function "
  111. Args: (number)
  112. Returns the absolute value of NUMBER.")
  113.  
  114. (docfun acons function "
  115. Args: (key datum alist)
  116. Constructs a new alist by adding the pair (KEY . DATUM) to ALIST.")
  117.  
  118. (docfun acos function "
  119. Args: (number)
  120. Returns the arc cosine of NUMBER.")
  121.  
  122. (docfun acosh function "
  123. Args: (number)
  124. Returns the hyperbolic arc cosine of NUMBER.")
  125.  
  126. (docfun adjoin function "
  127. Args: (item list &key (test #'eql) test-not (key #'identity))
  128. Adds ITEM to LIST unless ITEM is already a member of LIST.")
  129.  
  130. (docfun adjust-array function "
  131. Args: (array dimensions
  132.        &key (element-type (array-element-type array))
  133.             initial-element (initial-contents nil) (fill-pointer nil)
  134.             (displaced-to nil) (displaced-index-offset 0))
  135. Adjusts the dimensions of ARRAY to the given DIMENSIONS.  The default value
  136. of INITIAL-ELEMENT depends on ELEMENT-TYPE.")
  137.  
  138. (docfun adjustable-array-p function "
  139. Args: (array)
  140. Returns T if ARRAY is adjustable; NIL otherwise.")
  141.  
  142. (docfun allocate function "
  143. Args: (type number &optional (really-allocate nil))
  144. KCL specific: Sets the maximum number of pages for the type class of the
  145. KCL implementation type TYPE to NUMBER.  If REALLY-ALLOCATE is given a
  146. non-NIL value, then the specified number of pages will be allocated
  147. immediately.")
  148.  
  149. (docfun allocate-contiguous-pages function "
  150. Args: (number &optional (really-allocate nil))
  151. KCL specific: Sets the maximum number of pages for contiguous blocks to
  152. NUMBER.  If REALLY-ALLOCATE is given a non-NIL value, then the specified
  153. number of pages will be allocated immediately.")
  154.  
  155. (docfun allocate-relocatable-pages function "
  156. Args: (number)
  157. KCL specific: Sets the maximum number of pages for relocatable blocks to
  158. NUMBER.")
  159.  
  160. (docfun allocated-contiguous-pages function "
  161. Args: ()
  162. KCL specific: Returns the number of pages currently allocated for contiguous
  163. blocks.")
  164.  
  165. (docfun allocated-pages function "
  166. Args: (type)
  167. KCL specific: Returns the number of pages currently allocated for the type
  168. class of the KCL implementation type TYPE.")
  169.  
  170. (docfun allocated-relocatable-pages function "
  171. Args: ()
  172. KCL specific: Returns the number of pages currently allocated for relocatable
  173. blocks.")
  174.  
  175. (docfun alpha-char-p function "
  176. Args: (char)
  177. Returns T if CHAR is an alphabetic character, A-Z or a-z; NIL otherwise.")
  178.  
  179. (docfun alphanumericp function "
  180. Args: (char)
  181. Returns T if CHAR is either numeric or alphabetic; NIL otherwise.")
  182.  
  183. (docfun and macro "
  184. Syntax: (and {form}*)
  185. Evaluates FORMs in order from left to right.  If any FORM evaluates to NIL,
  186. returns immediately with the value NIL.  Else, returns the value(s) of the
  187. last FORM.")
  188.  
  189. (docfun append function "
  190. Args: (&rest lists)
  191. Constructs a new list by concatenating its arguments.")
  192.  
  193. (docfun apply function "
  194. Args: (function arg &rest more-args)
  195. Applies FUNCTION.  The arguments to the function consist of all ARGs
  196. except for the last, and all elements of the last ARG.")
  197.  
  198. (docfun applyhook function "
  199. Args: (function args evalhookfn applyhookfn &optional (env nil))
  200. Applies FUNCTION to ARGS, with *EVALHOOK* bound to EVALHOOKFN and with
  201. *APPLYHOOK* bound to APPLYHOOKFN.  Ignores the hook function once, for the
  202. top-level application of FUNCTION to ARGS.")
  203.  
  204. (docvar *applyhook* variable "
  205. Used to substitute another function for the implicit APPLY normally done
  206. within EVAL.  If *APPLYHOOK* is not NIL, its value must be a function 
  207. which takes three arguments: a function to be applied, a list of arguments,
  208. and an environment.  This function does the application instead of APPLY.")
  209.  
  210. (docfun apropos function "
  211. Args: (string &optional (package nil))
  212. Prints those symbols whose print-names contain STRING as substring.
  213. If PACKAGE is non-NIL, then only the specified package is searched.")
  214.  
  215. (docfun apropos-list function "
  216. Args: (string &optional (package nil))
  217. Returns, as a list, all symbols whose print-names contain STRING as substring.
  218. If PACKAGE is non-NIL, then only the specified package is searched.")
  219.  
  220. (docfun aref function "
  221. Args: (array &rest subscripts)
  222. Returns the element of ARRAY specified by SUBSCRIPTS.")
  223.  
  224. (doctype array "
  225. An array is an object with components arranged according to Cartesian
  226. coordinate system.  Vectors are kinds of arrays.  Other arrays are called
  227. general arrays and are denoted as
  228.     #?a( ... )    or    #?A( ... )
  229. where '?' is actually the rank of the array.
  230. Some arrays may be displaced to another array, may have a fill pointer, or
  231. may be adjusted its size.  Other arrays are called simple arrays.")
  232.  
  233. (docfun array-dimension function "
  234. Args: (array axis-number)
  235. Returns the length of AXIS-NUMBER of ARRAY.")
  236.  
  237. (docvar array-dimension-limit constant "
  238. The exclusive upper bound of the array dimension.")
  239.  
  240. (docfun array-dimensions function "
  241. Args: (array)
  242. Returns a list whose elements are the dimensions of ARRAY")
  243.  
  244. (docfun array-element-type function "
  245. Args: (array)
  246. Returns the type of the elements of ARRAY")
  247.  
  248. (docfun array-has-fill-pointer-p function "
  249. Args: (array)
  250. Returns T if ARRAY has a fill pointer; NIL otherwise.")
  251.  
  252. (docfun array-in-bounds-p function "
  253. Args: (array &rest subscripts)
  254. Returns T if SUBSCRIPTS are valid subscripts for ARRAY; NIL otherwise.")
  255.  
  256. (docfun array-rank function "
  257. Args: (array)
  258. Returns the number of dimensions of ARRAY.")
  259.  
  260. (docvar array-rank-limit constant "
  261. The exclusive upper bound on the rank of an array.")
  262.  
  263. (docfun array-row-major-index function "
  264. Args: (array &rest subscripts)
  265. Returns the index into the data vector of ARRAY for the element of ARRAY
  266. specified by SUBSCRIPTS.")
  267.  
  268. (docfun array-total-size function "
  269. Args: (array)
  270. Returns the total number of elements of ARRAY.")
  271.  
  272. (docvar array-total-size-limit constant "
  273. The exclusive upper bound on the total number of elements of an array.")
  274.  
  275. (docfun arrayp function "
  276. Args: (x)
  277. Returns T if X is an array; NIL otherwise.")
  278.  
  279. (docfun ash function "
  280. Args: (integer count)
  281. Shifts INTEGER left by COUNT places.  Shifts right if COUNT is negative.")
  282.  
  283. (docfun asin function "
  284. Args: (number)
  285. Returns the arc sine of NUMBER.")
  286.  
  287. (docfun asinh function "
  288. Args: (number)
  289. Returns the hyperbolic arc sine of NUMBER.")
  290.  
  291. (docfun assert macro "
  292. Syntax: (assert test-form [({place}*) [string {arg}*]])
  293. Signals an error if the value of TEST-FORM is NIL.  STRING is an format string
  294. used as the error message.  ARGs are arguments to the format string.")
  295.  
  296. (docfun assoc function "
  297. Args: (item alist &key (test #'eql) test-not)
  298. Returns the first pair in ALIST whose car is equal (in the sense of TEST) to
  299. ITEM.")
  300.  
  301. (docfun assoc-if function "
  302. Args: (test alist)
  303. Returns the first pair in ALIST whose car satisfies TEST.")
  304.  
  305. (docfun assoc-if-not function "
  306. Args: (test alist)
  307. Returns the first pair in ALIST whose car does not satisfy TEST.")
  308.  
  309. (docfun atan function "
  310. Args: (x &optional (y 1))
  311. Returns the arc tangent of X/Y.")
  312.  
  313. (docfun atanh function "
  314. Args: (number)
  315. Returns the hyperbolic arc tangent of NUMBER.")
  316.  
  317. (docfun atom function "
  318. Args: (x)
  319. Returns T if X is not a cons; NIL otherwise.")
  320.  
  321. (doctype bignum "
  322. A bignum is an integer that is not a fixnum.")
  323.  
  324. (docfun bit function "
  325. Args: (bit-array &rest subscripts)
  326. Returns the bit from BIT-ARRAY at SUBSCRIPTS.")
  327.  
  328. (docfun bit-and function "
  329. Args: (bit-array1 bit-array2 &optional (result-bit-array nil))
  330. Performs a bit-wise logical AND on the elements of BIT-ARRAY1 and BIT-ARRAY2.
  331. Puts the results into a new bit array if RESULT-BIT-ARRAY is NIL, into
  332. BIT-ARRAY1 if RESULT-BIT-ARRAY is T, or into RESULT-BIT-ARRAY otherwise.")
  333.  
  334. (docfun bit-andc1 function "
  335. Args: (bit-array1 bit-array2 &optional (result-bit-array nil))
  336. Performs a bit-wise logical ANDC1 on the elements of BIT-ARRAY1 and
  337. BIT-ARRAY2.
  338. Puts the results into a new bit array if RESULT-BIT-ARRAY is NIL, into
  339. BIT-ARRAY1 if RESULT-BIT-ARRAY is T, or into RESULT-BIT-ARRAY otherwise.")
  340.  
  341. (docfun bit-andc2 function "
  342. Args: (bit-array1 bit-array2 &optional (result-bit-array nil))
  343. Performs a bit-wise logical ANDC2 on the elements of BIT-ARRAY1 and
  344. BIT-ARRAY2.
  345. Puts the results into a new bit array if RESULT-BIT-ARRAY is NIL, into
  346. BIT-ARRAY1 if RESULT-BIT-ARRAY is T, or into RESULT-BIT-ARRAY otherwise.")
  347.  
  348. (docfun bit-eqv function "
  349. Args: (bit-array1 bit-array2 &optional (result-bit-array nil))
  350. Performs a bit-wise logical EQV  on the elements of BIT-ARRAY1 and BIT-ARRAY2.
  351. Puts the results into a new bit array if RESULT-BIT-ARRAY is NIL, into
  352. BIT-ARRAY1 if RESULT-BIT-ARRAY is T, or into RESULT-BIT-ARRAY otherwise.")
  353.  
  354. (docfun bit-ior function "
  355. Args: (bit-array1 bit-array2 &optional (result-bit-array nil))
  356. Performs a bit-wise logical IOR on the elements of BIT-ARRAY1 and BIT-ARRAY2.
  357. Puts the results into a new bit array if RESULT-BIT-ARRAY is NIL, into
  358. BIT-ARRAY1 if RESULT-BIT-ARRAY is T, or into RESULT-BIT-ARRAY otherwise.")
  359.  
  360. (docfun bit-nand function "
  361. Args: (bit-array1 bit-array2 &optional (result-bit-array nil))
  362. Performs a bit-wise logical NAND  on the elements of BIT-ARRAY1 and
  363. BIT-ARRAY2.
  364. Puts the results into a new bit array if RESULT-BIT-ARRAY is NIL, into
  365. BIT-ARRAY1 if RESULT-BIT-ARRAY is T, or into RESULT-BIT-ARRAY otherwise.")
  366.  
  367. (docfun bit-nor function "
  368. Args: (bit-array1 bit-array2 &optional (result-bit-array nil))
  369. Performs a bit-wise logical NOR  on the elements of BIT-ARRAY1 and BIT-ARRAY2.
  370. Puts the results into a new bit array if RESULT-BIT-ARRAY is NIL, into
  371. BIT-ARRAY1 if RESULT-BIT-ARRAY is T, or into RESULT-BIT-ARRAY otherwise.")
  372.  
  373. (docfun bit-not function "
  374. Args: (bit-array &optional (result-bit-array nil))
  375. Performs a bit-wise logical NOT in the elements of BIT-ARRAY.
  376. Puts the results into a new bit array if RESULT-BIT-ARRAY is NIL, into
  377. BIT-ARRAY if RESULT-BIT-ARRAY is T, or into RESULT-BIT-ARRAY otherwise.")
  378.  
  379. (docfun bit-orc1 function "
  380. Args: (bit-array1 bit-array2 &optional (result-bit-array nil))
  381. Performs a bit-wise logical ORC1 on the elements of BIT-ARRAY1 and BIT-ARRAY2.
  382. Puts the results into a new bit array if RESULT-BIT-ARRAY is NIL, into
  383. BIT-ARRAY1 if RESULT-BIT-ARRAY is T, or into RESULT-BIT-ARRAY otherwise.")
  384.  
  385. (docfun bit-orc2 function "
  386. Args: (bit-array1 bit-array2 &optional (result-bit-array nil))
  387. Performs a bit-wise logical ORC2 on the elements of BIT-ARRAY1 and BIT-ARRAY2.
  388. Puts the results into a new bit array if RESULT-BIT-ARRAY is NIL, into
  389. BIT-ARRAY1 if RESULT-BIT-ARRAY is T, or into RESULT-BIT-ARRAY otherwise.")
  390.  
  391. (doctype bit-vector "
  392. A bit-vector is a vector of bits.  A bit-vector is denoted by '#*' followed
  393. by the constituent bits (0 or 1).
  394. Some bit-vectors may be displaced to another bit-vectors, may have a fill
  395. pointer, or may be adjusted its size.  Other bit-vectors are called simple
  396. bit-vectors.")
  397.  
  398. (docfun bit-vector-p function "
  399. Args: (x)
  400. Returns T if X is a bit vector; NIL otherwise.")
  401.  
  402. (docfun bit-xor function "
  403. Args: (bit-array1 bit-array2 &optional (result-bit-array nil))
  404. Performs a bit-wise logical XOR on the elements of BIT-ARRAY1 and BIT-ARRAY2.
  405. Puts the results into a new bit array if RESULT-BIT-ARRAY is NIL, into
  406. BIT-ARRAY1 if RESULT-BIT-ARRAY is T, or into RESULT-BIT-ARRAY otherwise.")
  407.  
  408. (docfun block special "
  409. Syntax: (block name {form}*)
  410. The FORMs are evaluated in order, but it is possible to exit the block
  411. using (RETURN-FROM name value).  The RETURN-FROM must be lexically contained
  412. within the block.")
  413.  
  414. (docfun boole function "
  415. Args: (op integer1 integer2)
  416. Returns an integer produced by performing the logical operation specified by
  417. OP on the two integers.  OP must be the value of one of the following
  418. constants:
  419.     BOOLE-CLR    BOOLE-C1    BOOLE-XOR    BOOLE-ANDC1
  420.     BOOLE-SET    BOOLE-C2    BOOLE-EQV    BOOLE-ANDC2
  421.     BOOLE-1        BOOLE-AND    BOOLE-NAND    BOOLE-ORC1
  422.     BOOLE-2        BOOLE-IOR    BOOLE-NOR    BOOLE-ORC2
  423. See the variable docs of these constants for their operations.")
  424.  
  425. (docvar boole-1 constant "
  426. Makes BOOLE return INTEGER1.")
  427.  
  428. (docvar boole-2 constant "
  429. Makes BOOLE return INTEGER2.")
  430.  
  431. (docvar boole-and constant "
  432. Makes BOOLE return LOGAND of INTEGER1 and INTEGER2.")
  433.  
  434. (docvar boole-andc1 constant "
  435. Makes BOOLE return LOGANDC1 of INTEGER1 and INTEGER2.")
  436.  
  437. (docvar boole-andc2 constant "
  438. Makes BOOLE return LOGANDC2 of INTEGER1 and INTEGER2.")
  439.  
  440. (docvar boole-c1 constant "
  441. Makes BOOLE return the complement of INTEGER1.")
  442.  
  443. (docvar boole-c2 constant "
  444. Makes BOOLE return the complement of INTEGER2.")
  445.  
  446. (docvar boole-clr constant "
  447. Makes BOOLE return 0.")
  448.  
  449. (docvar boole-eqv constant "
  450. Makes BOOLE return LOGEQV of INTEGER1 and INTEGER2.")
  451.  
  452. (docvar boole-ior constant "
  453. Makes BOOLE return LOGIOR of INTEGER1 and INTEGER2.")
  454.  
  455. (docvar boole-nand constant "
  456. Makes BOOLE return LOGNAND of INTEGER1 and INTEGER2.")
  457.  
  458. (docvar boole-nor constant "
  459. Makes BOOLE return LOGNOR of INTEGER1 and INTEGER2.")
  460.  
  461. (docvar boole-orc1 constant "
  462. Makes BOOLE return LOGORC1 of INTEGER1 and INTEGER2.")
  463.  
  464. (docvar boole-orc2 constant "
  465. Makes BOOLE return LOGORC2 of INTEGER1 and INTEGER2.")
  466.  
  467. (docvar boole-set constant "
  468. Makes BOOLE return -1.")
  469.  
  470. (docvar boole-xor constant "
  471. Makes BOOLE return LOGXOR of INTEGER1 and INTEGER2.")
  472.  
  473. (docfun both-case-p function "
  474. Args: (char)
  475. Returns T if CHAR is an alphabetic character; NIL otherwise.  Equivalent to
  476. ALPHA-CHAR-P.")
  477.  
  478. (docfun boundp function "
  479. Args: (symbol)
  480. Returns T if the global variable named by SYMBOL has a value; NIL otherwise.")
  481.  
  482. (docfun break function "
  483. Args: (&optional (format-string nil) &rest args)
  484. Enters a break loop.  If FORMAT-STRING is non-NIL, formats FORMAT-STRING
  485. and ARGS to *ERROR-OUTPUT* before entering a break loop.
  486. Typing :HELP at the break loop will list the break-loop commands.")
  487.  
  488. (docvar *break-enable* variable "
  489. KCL specific:  When an error occurrs, control enters to the break loop only
  490. if the value of this variable is non-NIL.")
  491.  
  492. (docvar *break-on-warnings* variable "
  493. When the function WARN is called, control enters to the break loop only
  494. if the value of this varialbe is non-NIL.")
  495.  
  496. (docfun butlast function "
  497. Args: (list &optional (n 1))
  498. Creates and returns a list with the same elements as LIST but without the
  499. last N elements.")
  500.  
  501. (docfun by function "
  502. Args: ()
  503. KCL specific: Exits from KCL.")
  504.  
  505. (docfun bye function "
  506. Args: ()
  507. KCL specific: Exits from KCL.")
  508.  
  509. (docfun byte function "
  510. Args: (size position)
  511. Returns a byte specifier.  In KCL, a byte specifier is represented by
  512. a dotted pair (<size> . <position>).")
  513.  
  514. (docfun byte-position function "
  515. Args: (bytespec)
  516. Returns the position part (in KCL, the cdr part) of the byte specifier.")
  517.  
  518. (docfun byte-size function "
  519. Args: (bytespec)
  520. Returns the size part (in KCL, the car part) of the byte specifier.")
  521.  
  522. (docfun caaaar function "
  523. Args: (x)
  524. Equivalent to (CAR (CAR (CAR (CAR X)))).")
  525.  
  526. (docfun caaadr function "
  527. Args: (x)
  528. Equivalent to (CAR (CAR (CAR (CDR X)))).")
  529.  
  530. (docfun caaar function "
  531. Args: (x)
  532. Equivalent to (CAR (CAR (CAR X))).")
  533.  
  534. (docfun caadar function "
  535. Args: (x)
  536. Equivalent to (CAR (CAR (CDR (CAR X)))).")
  537.  
  538. (docfun caaddr function "
  539. Args: (x)
  540. Equivalent to (CAR (CAR (CDR (CDR X)))).")
  541.  
  542. (docfun caadr function "
  543. Args: (x)
  544. Equivalent to (CAR (CAR (CDR X))).")
  545.  
  546. (docfun caar function "
  547. Args: (x)
  548. Equivalent to (CAR (CAR X)).")
  549.  
  550. (docfun cadaar function "
  551. Args: (x)
  552. Equivalent to (CAR (CDR (CAR (CAR X)))).")
  553.  
  554. (docfun cadadr function "
  555. Args: (x)
  556. Equivalent to (CAR (CDR (CAR (CDR X)))).")
  557.  
  558. (docfun cadar function "
  559. Args: (x)
  560. Equivalent to (CAR (CDR (CAR X))).")
  561.  
  562. (docfun caddar function "
  563. Args: (x)
  564. Equivalent to (CAR (CDR (CDR (CAR X)))).")
  565.  
  566. (docfun cadddr function "
  567. Args: (x)
  568. Equivalent to (CAR (CDR (CDR (CDR X)))).")
  569.  
  570. (docfun caddr function "
  571. Args: (x)
  572. Equivalent to (CAR (CDR (CDR X))).")
  573.  
  574. (docfun cadr function "
  575. Args: (x)
  576. Equivalent to (CAR (CDR X)).")
  577.  
  578. (docvar call-arguments-limit constant "
  579. The upper exclusive bound on the number of arguments that may be passed to
  580. a function.  Actually, however, there is no such upper bound in KCL.")
  581.  
  582. (docfun car function "
  583. Args: (list)
  584. Returns the car of LIST.  Returns NIL if LIST is NIL.")
  585.  
  586. (docfun case macro "
  587. Syntax: (case keyform {({key | ({key}*)} {form}*)}*)
  588. Evaluates KEYFORM and tries to find the KEY that is EQL to the value of
  589. KEYFORM.  If one is found, then evaluates FORMs that follow the KEY and
  590. returns the value(s) of the last FORM.  If not, simply returns NIL.")
  591.  
  592. (docfun catch special "
  593. Syntax: (catch tag {form}*)
  594. Sets up a catcher with that value TAG.  Then evaluates FORMs as a PROGN, but
  595. may possibly abort the evaluation by a THROW form that specifies the value
  596. EQ to the catcher tag.")
  597.  
  598. (docfun ccase macro "
  599. Syntax: (ccase keyplace {({key | ({key}*)} {form}*)}*)
  600. Evaluates KEYPLACE and tries to find the KEY that is EQL to the value of
  601. KEYPLACE.  If one is found, then evaluates FORMs that follow the KEY and
  602. returns the value(s) of the last FORM.  If not, signals a correctable error.")
  603.  
  604. (docfun cdaaar function "
  605. Args: (x)
  606. Equivalent to (CDR (CAR (CAR (CAR X)))).")
  607.  
  608. (docfun cdaadr function "
  609. Args: (x)
  610. Equivalent to (CDR (CAR (CAR (CDR X)))).")
  611.  
  612. (docfun cdaar function "
  613. Args: (x)
  614. Equivalent to (CDR (CAR (CAR X))).")
  615.  
  616. (docfun cdadar function "
  617. Args: (x)
  618. Equivalent to (CDR (CAR (CDR (CAR X)))).")
  619.  
  620. (docfun cdaddr function "
  621. Args: (x)
  622. Equivalent to (CDR (CAR (CDR (CDR X)))).")
  623.  
  624. (docfun cdadr function "
  625. Args: (x)
  626. Equivalent to (CDR (CAR (CDR X))).")
  627.  
  628. (docfun cdar function "
  629. Args: (x)
  630. Equivalent to (CDR (CAR X)).")
  631.  
  632. (docfun cddaar function "
  633. Args: (x)
  634. Equivalent to (CDR (CDR (CAR (CAR X)))).")
  635.  
  636. (docfun cddadr function "
  637. Args: (x)
  638. Equivalent to (CDR (CDR (CAR (CDR X)))).")
  639.  
  640. (docfun cddar function "
  641. Args: (x)
  642. Equivalent to (CDR (CDR (CAR X))).")
  643.  
  644. (docfun cdddar function "
  645. Args: (x)
  646. Equivalent to (CDR (CDR (CDR (CAR X)))).")
  647.  
  648. (docfun cddddr function "
  649. Args: (x)
  650. Equivalent to (CDR (CDR (CDR (CDR X)))).")
  651.  
  652. (docfun cdddr function "
  653. Args: (x)
  654. Equivalent to (CDR (CDR (CDR X))).")
  655.  
  656. (docfun cddr function "
  657. Args: (x)
  658. Equivalent to (CDR (CDR X)).")
  659.  
  660. (docfun cdr function "
  661. Args: (list)
  662. Returns the cdr of LIST.  Returns NIL if LIST is NIL.")
  663.  
  664. (docfun ceiling function "
  665. Args: (number &optional (divisor 1))
  666. Returns the smallest integer not less than or NUMBER/DIVISOR.  Returns the
  667. remainder as the second value.")
  668.  
  669. (docfun cerror function "
  670. Args: (continue-format-string error-format-string &rest args)
  671. Signals a correctable error.")
  672.  
  673. (docfun char function "
  674. Args: (string index)
  675. Returns the INDEX-th character in STRING.")
  676.  
  677. (docfun char-bit function "
  678. Args: (char name)
  679. Returns T if the named bit is on in the character CHAR; NIL otherwise.
  680. In KCL, this function always returns NIL.")
  681.  
  682. (docfun char-bits function "
  683. Args: (char)
  684. Returns the bits attribute (which is always 0 in KCL) of CHAR.")
  685.  
  686. (docvar char-bits-limit constant "
  687. The upper exclusive bound on values produced by CHAR-BITS.")
  688.  
  689. (docfun char-code function "
  690. Args: (char)
  691. Returns the code attribute of CHAR.")
  692.  
  693. (docvar char-code-limit constant "
  694. The upper exclusive bound on values produced by CHAR-CODE.")
  695.  
  696. (docvar char-control-bit constant "
  697. The bit that indicates a control character.")
  698.  
  699. (docfun char-downcase function "
  700. Args: (char)
  701. Returns the lower-case equivalent of CHAR, if any.
  702. If not, simply returns CHAR.")
  703.  
  704. (docfun char-equal function "
  705. Args: (char &rest more-chars)
  706. Returns T if all of its arguments are the same character; NIL otherwise.
  707. Upper case character and its lower case equivalent are regarded the same.")
  708.  
  709. (docfun char-font function "
  710. Args: (char)
  711. Returns the font attribute of CHAR.")
  712.  
  713. (docvar char-font-limit constant "
  714. The upper exclusive bound on values produced by CHAR-FONT.")
  715.  
  716. (docfun char-greaterp function "
  717. Args: (char &rest more-chars)
  718. Returns T if the codes of CHARs are in strictly decreasing order; NIL
  719. otherwise.  For a lower-case character, the code of its upper-case equivalent
  720. is used.")
  721.  
  722. (docvar char-hyper-bit constant "
  723. The bit that indicates a hyper character.")
  724.  
  725. (docfun char-int function "
  726. Args: (char)
  727. Returns the font, bits, and code attributes as a single non-negative integer.
  728. Equivalent to CHAR-CODE in KCL.")
  729.  
  730. (docfun char-lessp function "
  731. Args: (char &rest more-chars)
  732. Returns T if the codes of CHARs are in strictly increasing order; NIL
  733. otherwise.  For a lower-case character, the code of its upper-case equivalent
  734. is used.")
  735.  
  736. (docvar char-meta-bit constant "
  737. The bit that indicates a meta character.")
  738.  
  739. (docfun char-name function "
  740. Args: (char)
  741. Returns the name for CHAR as a string; NIL if CHAR has no name.
  742. Only #\\Backspace, #\\Tab, #\\Newline (or #\\Linefeed), #\\Page, #\\Return,
  743. and #\\Rubout have names.")
  744.  
  745. (docfun char-not-equal function "
  746. Args: (char &rest more-chars)
  747. Returns T if no two of CHARs are the same character; NIL otherwise.
  748. Upper case character and its lower case equivalent are regarded the same.")
  749.  
  750. (docfun char-not-greaterp function "
  751. Args: (char &rest more-chars)
  752. Returns T if the codes of CHARs are in strictly non-decreasing order; NIL
  753. otherwise.  For a lower-case character, the code of its upper-case equivalent
  754. is used.")
  755.  
  756. (docfun char-not-lessp function "
  757. Args: (char &rest more-chars)
  758. Returns T if the codes of CHARs are in strictly non-increasing order; NIL
  759. otherwise.  For a lower-case character, the code of its upper-case equivalent
  760. is used.")
  761.  
  762. (docvar char-super-bit constant "
  763. The bit that indicates a super character.")
  764.  
  765. (docfun char-upcase function "
  766. Args: (char)
  767. Returns the upper-case equivalent of CHAR, if any.
  768. If not, simply returns CHAR.")
  769.  
  770. (docfun char/= function "
  771. Args: (char &rest more-chars)
  772. Returns T if no two of CHARs are the same character; NIL otherwise.")
  773.  
  774. (docfun char< function "
  775. Args: (char &rest more-chars)
  776. Returns T if the codes of CHARs are in strictly increasing order; NIL
  777. otherwise.")
  778.  
  779. (docfun char<= function "
  780. Args: (char &rest more-chars)
  781. Returns T if the codes of CHARs are in strictly non-decreasing order; NIL
  782. otherwise.")
  783.  
  784. (docfun char= function "
  785. Args: (char &rest more-chars)
  786. Returns T if all CHARs are the same character; NIL otherwise.")
  787.  
  788. (docfun char> function "
  789. Args: (char &rest more-chars)
  790. Returns T if the codes of CHARs are in strictly decreasing order; NIL
  791. otherwise.")
  792.  
  793. (docfun char>= function "
  794. Args: (char &rest more-chars)
  795. Returns T if the codes of CHARs are in strictly non-increasing order; NIL
  796. otherwise.")
  797.  
  798. (doctype character "
  799. A character object represents a character.  Characters have font, bits, and
  800. code attributes.  Font and bits attributes are always 0 in KCL.  Most versions
  801. of KCL uses ASCII code:
  802.  
  803.   000 - 037    #\\^@  #\\^A  #^B ... #\\Z  #\\^[  #\\^\\  #\\^]  #\\^^  #\\^_
  804.         except #\\Tab(011)     #\\Newline(012)     #\\Page(014)
  805.                #\\Return(015)  #\\Backspace(031)
  806.   040 - 057    #\\Space  #\\!  #\\\"  #\\#  #\\$  #\\%  #\\&  #\\'  #\\(  #\\)  #\\*
  807.         #\\+  #\\,  #\\-  #\\.  #\\/
  808.   060 - 071    #\\0  #\\1  #\\2  #\\3  #\\4  #\\5  #\\6  #\\7  #\\8  #\\9
  809.   072 - 100    #\\:  #\\;  #\\<  #\\=  #\\>  #\\?  #\\@
  810.   101 - 132    #\\A ... #\\Z
  811.   133 - 140    #\\[  #\\\\  #\\]  #\\^  #\\_  #\\`
  812.   141 - 172    #\\a ... #\\z
  813.   173 - 177    #\\{  #\\|  #\\}  #\\~  #\\Rubout
  814.  
  815. Some versions of KCL support additional characters to represent Japanese
  816. KANJI characters with.")
  817.  
  818. (docfun character function "
  819. Args: (x)
  820. Coerces X into a character object if possible.")
  821.  
  822. (docfun characterp function "
  823. Args: (x)
  824. Returns T if X is a character; NIL otherwise.")
  825.  
  826. (docfun check-type macro "
  827. Syntax: (check-type place typespec [string])
  828. Signals an error, if the contents of PLACE are not of the specified type.")
  829.  
  830. (docfun cis function "
  831. Args: (radians)
  832. Returns e raised to i*RADIANS.")
  833.  
  834. (docfun clear-input function "
  835. Args: (&optional (stream *standard-input*))
  836. Clears the input stream STREAM.")
  837.  
  838. (docfun clear-output function "
  839. Args: (&optional (stream *standard-output*))
  840. Clears the output stream STREAM.")
  841.  
  842. (docfun clines macro "
  843. Syntax: (clines {string}*)
  844. KCL specific:  The KCL compiler embeds STRINGs into the intermediate C
  845. language code.  The interpreter ignores this form.")
  846.  
  847. (docfun close function "
  848. Args: (stream &key (abort nil))
  849. Closes STREAM.  A non-NIL value of :ABORT indicates an abnormal termination.")
  850.  
  851. (docfun clrhash function "
  852. Args: (hash-table)
  853. Removes all entries of HASH-TABLE and returns the hash table itself.")
  854.  
  855. (docfun code-char function "
  856. Args: (code &optional (bits 0) (font 0))
  857. Returns a character object with the specified code, if any.
  858. If not, returns NIL.")
  859.  
  860. (docfun coerce function "
  861. Args: (x type)
  862. Coerces X to an object of the type TYPE.")
  863.  
  864. (doctype common "
  865. COMMON is the type of all Common Lisp data types.")
  866.  
  867. (docfun commonp function "
  868. Args: (x)
  869. Returns T if X is a Common Lisp object; NIL otherwise.")
  870.  
  871. (docfun compile function "
  872. Args: (name &optional (definition nil) &key (leave-gazonk nil))
  873. If DEFINITION is NIL, NAME must be the name of a not-yet-compiled
  874. function.  In this case, COMPILE compiles the function, installs the compiled
  875. function as the global function definition of NAME, and returns NAME.
  876. If DEFINITION is non-NIL, it must be a lambda expression and NAME must be
  877. a symbol.  COMPILE compiles the lambda expression, installs the compiled
  878. function as the function definition of NAME, and returns NAME.
  879. There is only one exception for this:  If NAME is NIL, then the compiled
  880. function is not installed but is simply returned as the value of COMPILE.
  881.      In any case, COMPILE creates temporary files whose filenames are
  882. \"gazonk***\".  By default, i.e. if :LEAVE-GAZONK is not supplied or is
  883. NIL, these files are automatically deleted after compilation.")
  884.  
  885. (docfun compile-file function "
  886. Args: (input-pathname
  887.        &key output-file (load nil) (message-file nil) (verbose nil))
  888. Compiles the file specified by INPUT-PATHNAME and generates a fasl file
  889. specified by OUTPUT-FILE.  If the filetype is not specified in
  890. INPUT-PATHNAME, then \".lsp\" is used as the default file type for the
  891. source file.  :LOAD specifies whether to load the generated fasl file
  892. after compilation.  :MESSAGE-FILE specifies the log file for the compiler
  893. messages.  It defaults to the value of the variable COMPILER:*DEFAULT-
  894. MESSAGE-FILE*.  A non-NIL value of :VERBOSE forces the compiler to indicate
  895. the form currently being compiled.  More keyword parameters are accepted,
  896. depending on the version.  Most versions of KCL can receive :O-FILE, :C-FILE,
  897. :H-FILE, and :DATA-FILE keyword parameters, with which you can control the
  898. intermediate files generated by the KCL compiler.  See the KCL Report
  899. at your hand for the details.")
  900.  
  901. (doctype compiled-function "
  902. A compiled function is a compiled code object.  A compiled function is
  903. denoted in either of the form:
  904.     #<compiled-function ?>
  905.     #<compiled-closure nil>
  906. where '?' is actually the name of the compiled-function.")
  907.  
  908. (docfun compiled-function-p function "
  909. Args: (x)
  910. Returns T if X is a compiled function; NIL otherwise.")
  911.  
  912. (docfun compiler-let special "
  913. Syntax: (compiler-let ({var | (var [value])}*) {form}*)
  914. When interpreted, this form works just like a LET form with all VARs declared
  915. special.  When compiled, FORMs are processed with the VARs bound at compile
  916. time, but no bindings occur when the compiled code is executed.")
  917.  
  918. (doctype complex "
  919. A complex number consists of a real part and an imaginary part.  A complex
  920. number is denoted as
  921.     #c( realpart  imagpart )  or  #C( realpart  imagpart )
  922. where realpart and imagpart are non-complex numbers.")
  923.  
  924. (docfun complex function "
  925. Args: (realpart &optional (imagpart 0))
  926. Returns a complex number with the given real and imaginary parts.")
  927.  
  928. (docfun complexp function "
  929. Args: (x)
  930. Returns T if X is a complex number; NIL otherwise.")
  931.  
  932. (docfun concatenate function "
  933. Args: (result-type &rest sequences)
  934. Returns a new sequence of the specified RESULT-TYPE, consisting of all
  935. elements in SEQUENCEs.")
  936.  
  937. (docfun cond macro "
  938. Syntax: (cond {(test {form}*)}*)
  939. Evaluates each TEST in order until one evaluates to a non-NIL value.  Then
  940. evaluates the associated FORMs in order and returns the value(s) of the last
  941. FORM.  If no forms follow the TEST, then returns the value of the TEST.
  942. Returns NIL, if all TESTs evaluate to NIL.")
  943.  
  944. (docfun conjugate function "
  945. Args: (number)
  946. Returns the complex conjugate of NUMBER.")
  947.  
  948. (doctype cons "
  949. A cons is a record structure containing two components called the car and the
  950. cdr.")
  951.  
  952. (docfun cons function "
  953. Args: (x y)
  954. Returns a new cons whose car and cdr are X and Y, respectively.")
  955.  
  956. (docfun consp function "
  957. Args: (x)
  958. Returns T if X is a cons; NIL otherwise.")
  959.  
  960. (docfun constantp function "
  961. Args: (symbol)
  962. Returns T if the variable named by SYMBOL is a constant; NIL otherwise.")
  963.  
  964. (docfun copy-alist function "
  965. Args: (alist)
  966. Returns a new copy of ALIST.")
  967.  
  968. (docfun copy-list function "
  969. Args: (list)
  970. Returns a new copy of LIST.")
  971.  
  972. (docfun copy-readtable function "
  973. Args: (&optional (from-readtable *readtable*) (to-readtable nil))
  974. Returns a copy of the readtable FROM-READTABLE.  If TO-READTABLE is non-NIL,
  975. then copies into TO-READTABLE.  Otherwise, creates a new readtable.")
  976.  
  977. (docfun copy-seq function "
  978. Args: (sequence)
  979. Returns a copy of SEQUENCE.")
  980.  
  981. (docfun copy-symbol function "
  982. Args: (symbol &optional (copy-props nil))
  983. Returns a new uninterned symbol with the same print name as SYMBOL.
  984. If COPY-PROPS is NIL, the function, the variable, and the property slots
  985. of the new symbol have no value.  Otherwise, these slots are given the
  986. values of the corresponding slots of SYMBOL.")
  987.  
  988. (docfun copy-tree function "
  989. Args: (object)
  990. Recursively copies conses in OBJECT and returns the result.")
  991.  
  992. (docfun cos function "
  993. Args: (radians)
  994. Returns the cosine of RADIANS.")
  995.  
  996. (docfun cosh function "
  997. Args: (number)
  998. Returns the hyperbolic cosine of NUMBER.")
  999.  
  1000. (docfun count function "
  1001. Args: (item sequence
  1002.        &key (from-end nil) (test #'eql) test-not (start 0)
  1003.             (end (length sequence)) (key #'identity))
  1004. Returns the number of elements in SEQUENCE satisfying TEST with ITEM.")
  1005.  
  1006. (docfun count-if function "
  1007. Args: (test sequence
  1008.        &key (from-end nil) (start 0) (end (length sequence)) (key #'identity))
  1009. Returns the number of elements in SEQUENCE satisfying TEST.")
  1010.  
  1011. (docfun count-if-not function "
  1012. Args: (test sequence
  1013.        &key (from-end nil) (start 0) (end (length sequence)) (key #'identity))
  1014. Returns the number of elements in SEQUENCE not satisfying TEST.")
  1015.  
  1016. (docfun ctypecase macro "
  1017. Syntax: (ctypecase keyplace {(type {form}*)}*)
  1018. Evaluates KEYPLACE and tries to find the TYPE in which the value of KEYPLACE
  1019. belongs.  If one is found, then evaluates FORMs that follow the KEY and
  1020. returns the value(s) of the last FORM.  If not, signals a correctable error.")
  1021.  
  1022. (docvar *debug-io* variable "
  1023. Holds the I/O stream used by the KCL debugger.")
  1024.  
  1025. (docfun decf macro "
  1026. Syntax: (decf place [delta])
  1027. Subtracts the number produced by DELTA (which defaults to 1) from the number
  1028. in PLACE.")
  1029.  
  1030. (docfun declare special "
  1031. Syntax: (declare {decl-spec}*)
  1032. Gives a declaration.  Possible DECL-SPECs are:
  1033.   (SPECIAL {var}*)
  1034.   (TYPE type {var}*)
  1035.   (type {var}*) : where 'type' is one of the following symbols
  1036.     array        fixnum        package        simple-bit-vector
  1037.     atom        float        pathname    simple-string
  1038.     bignum        function    random-state    simple-vector
  1039.     bit        hash-table    ratio        single-float
  1040.     bit-vector    integer        rational    standard-char
  1041.     character    keyword        readtable    stream
  1042.     common        list        sequence    string
  1043.     compiled-function  long-float    short-float    string-char
  1044.     complex        nil        signed-byte    symbol
  1045.     cons        null        unsigned-byte    t
  1046.     double-float    number        simple-array    vector
  1047.   (OBJECT {var}*)
  1048.   (FTYPE type {function-name}*)
  1049.   (FUNCTION function-name ({arg-type}*) {return-type}*)
  1050.   (INLINE {function-name}*)
  1051.   (NOTINLINE {function-name}*)
  1052.   (IGNORE {var}*)
  1053.   (OPTIMIZE {({SPEED | SPACE | SAFETY | COMPILATION-SPEED} {0 | 1 | 2 | 3})}*)
  1054.   (DECLARATION {non-standard-decl-name}*).")
  1055.  
  1056. (docfun decode-float function "
  1057. Args: (float)
  1058. Returns, as three values, the significand F, the exponent E, and the sign S
  1059. of the given float, so that
  1060.              E
  1061.     FLOAT = S * F * B    where B = (FLOAT-RADIX FLOAT)
  1062.  
  1063. S and F are floating-point numbers of the same float format as FLOAT, and E
  1064. is an integer.")
  1065.  
  1066. (docfun decode-universal-time function "
  1067. Args: (universal-time &optional (timezone -9))
  1068. Converts UNIVERSAL-TIME into a decoded time at the TIMEZONE.
  1069. Returns nine values: second, minute, hour, date, month (1 - 12), year,
  1070. day-of-week (0 - 6), daylight-saving-time-p, and time-zone.
  1071. TIMEZONE in KCL defaults to -9, the time zone of Japan.")
  1072.  
  1073. (docvar *default-pathname-defaults* variable "
  1074. The default pathname-defaults pathname.")
  1075.  
  1076. (docfun defcfun macro "
  1077. Syntax: (defcfun header n {element}*)
  1078. KCL specific: Defines a C-language function which calls Lisp functions and/or
  1079. handles Lisp objects.  HEADER gives the header of the C function as a string.
  1080. N is the number of the main stack entries used by the C function, primarily
  1081. for protecting Lisp objects from being garbage-collected.  Each ELEMENT may
  1082. give a C code fragment as a string, or it may be a list
  1083.     ((symbol {arg}*) {place}*)
  1084. which, when executed, calls the Lisp function named by SYMBOL with the
  1085. specified arguments and saves the value(s) to the specified places.
  1086. The DEFCFUN form has the above meanings only after compiled;  The KCL
  1087. interpreter simply ignores this form.")
  1088.  
  1089. (docfun defconstant macro "
  1090. Syntax: (defconstant name initial-value [doc])
  1091. Declares that the variable NAME is a constant whose value is the value of
  1092. INITIAL-VALUE.  The doc-string DOC, if supplied, is saved as a VARIABLE doc
  1093. and can be retrieved by (documentation 'NAME 'variable).")
  1094.  
  1095. (docfun defentry macro "
  1096. Syntax: (defentry name lambda-list C-function)
  1097. KCL specific:  The compiler defines a Lisp function whose body consists of
  1098. a calling sequence to the C language function specified by C-FUNCTION.  The
  1099. interpreter ignores this form.  See the doc of DEFUN for the complete syntax
  1100. of a lambda-list.")
  1101.  
  1102. (docfun define-modify-macro macro "
  1103. Syntax: (define-modify-macro name lambda-list fun [doc])
  1104. Defines a read-modify-write macro, like PUSH and INCF.  The defined macro will
  1105. expand a form (NAME place val1 ... valn) into a form that in effect SETFs the
  1106. value of the call (FUN PLACE arg1 ... argm) into PLACE, where arg1 ... argm
  1107. are parameters in LAMBDA-LIST which are bound to the forms VAL1 ... VALn.
  1108. The doc-string DOC, if supplied, is saved as a FUNCTION doc and can be
  1109. retrieved by (documentation 'NAME 'function).")
  1110.  
  1111. (docfun define-setf-method macro "
  1112. Syntax: (define-setf-method access-fun defmacro-lambda-list {decl | doc}*
  1113.           {form}*)
  1114. Defines how to SETF a generalized-variable reference of the form
  1115. (ACCESS-FUN ...).  When a form (setf (ACCESS-FUN arg1 ... argn) value) is
  1116. being evaluated, the FORMs are first evaluated as a PROGN with the parameters
  1117. in DEFMACRO-LAMBDA-LIST bound to ARG1 ... ARGn.  Assuming that the last FORM
  1118. returns five values
  1119.     (temp-var-1 ... temp-var-k)
  1120.     (value-from-1 ... value-form-k)
  1121.     (store-var)
  1122.     storing-form
  1123.     access-form
  1124. in order, the whole SETF is then expanded into
  1125.     (let* ((temp-var-1 value-from-1) ... (temp-k value-form-k)
  1126.            (store-var VALUE))
  1127.       storing-from)
  1128. Incidentally, the five values are called the five gangs of a SETF method.
  1129. The doc-string DOC, if supplied, is saved as a SETF doc and can be retrieved
  1130. by (documentation 'NAME 'setf).")
  1131.  
  1132. (docfun defla macro "
  1133. Syntax: (defla name lambda-list {decl | doc}* {form}*)
  1134. KCL specific: Used to DEFine Lisp Alternative.  For the interpreter, DEFLA is
  1135. equivalent to DEFUN, but the compiler ignores this form.")
  1136.  
  1137. (docfun defmacro macro "
  1138. Syntax: (defmacro name defmacro-lambda-list {decl | doc}* {form}*)
  1139. Defines a macro as the global macro definition of the symbol NAME.
  1140. The complete syntax of a defmacro-lambda-list is:
  1141.  
  1142. ( [&whole var]
  1143.   [&environment var]
  1144.   {pseudo-var}*
  1145.   [&optional {var | (pseudo-var [initform [pseudo-var]])}*]
  1146.   {[{&rest | &body} pseudo-var]
  1147.    [&key {var | ({var | (keyword pseudo-var)} [initform [pseudo-var]])}*
  1148.          [&allow-other-keys]]
  1149.    [&aux {var | (pseudo-var [initform])}*]
  1150.   |  . var})
  1151.  
  1152. where pseudo-var is either a symbol or a list of the following form:
  1153.  
  1154. ( {pseudo-var}*
  1155.   [&optional {var | (pseudo-var [initform [pseudo-var]])}*]
  1156.   {[{&rest | &body} pseudo-var]
  1157.    [&key {var | ({var | (keyword pseudo-var)} [initform [pseudo-var]])}*
  1158.          [ &allow-other-keys ] ]
  1159.    [&aux {var | (pseudo-var [initform])}*]
  1160.   |  . var})
  1161.  
  1162. As a special case, a non-NIL symbol is accepcted as a defmacro-lambda-list:
  1163. (DEFMACRO <name> <symbol> ...) is equivalent to
  1164. (DEFMACRO <name> (&REST <symbol>) ...).
  1165.      The doc-string DOC, if supplied, is saved as a FUNCTION doc and can be
  1166. retrieved by (documentation 'NAME 'function).
  1167. See the type doc of LIST for the backquote macro useful for defining macros.
  1168. Also, see the function doc of PPRINT for the output-formatting.")
  1169.  
  1170. (docfun defparameter macro "
  1171. Syntax: (defparameter name initial-value [doc])
  1172. Declares the variable NAME as a special variable and initializes the value.
  1173. The doc-string DOC, if supplied, is saved as a VARIABLE doc and can be
  1174. retrieved by (documentation 'NAME 'variable).")
  1175.  
  1176. (docfun defsetf macro "
  1177. Syntax: (defsetf access-fun {update-fun [doc] |
  1178.                              lambda-list (store-var) {decl | doc}* {form}*)
  1179. Defines how to SETF a generalized-variable reference of the form
  1180. (ACCESS-FUN ...).  The doc-string DOC, if supplied, is saved as a SETF doc and
  1181. can be retrieved by (documentation 'NAME 'setf).
  1182.  
  1183. (defsetf access-fun update-fun) defines an expansion from
  1184. (setf (ACCESS-FUN arg1 ... argn) value) to (UPDATE-FUN arg1 ... argn value).
  1185.  
  1186. (defsetf access-fun lambda-list (store-var) . body) defines a macro which
  1187. expands (setf (ACCESS-FUN arg1 ... argn) value) into the form
  1188.     (let* ((temp1 ARG1) ... (tempn ARGn) (temp0 value)) rest)
  1189. where REST is the value of BODY with parameters in LAMBDA-LIST bound to the
  1190. symbols TEMP1 ... TEMPn and with STORE-VAR bound to the symbol TEMP0.")
  1191.  
  1192. (docfun defstruct macro "
  1193. Syntax: (defstruct
  1194.          {name | (name {:conc-name | (:conc-name prefix-string) |
  1195.                         :constructor | (:constructor symbol [lambda-list]) |
  1196.                         :copier | (:copier symbol) |
  1197.                         :predicate | (:predicate symbol) | 
  1198.                         (:include symbol) |
  1199.                         (:print-function function) |
  1200.                         (:type {vector | (vector type) | list}) |
  1201.                         :named |
  1202.                         (:initial-offset number)}*)}
  1203.          [doc]
  1204.          {slot-name |
  1205.           (slot-name [default-value-form] {:type type | :read-only flag}*) }*
  1206.          )
  1207. Defines a structure.  The doc-string DOC, if supplied, is saved as a STRUCTURE
  1208. doc and can be retrieved by (documentation 'NAME 'structure).")
  1209.  
  1210. (docfun deftype macro "
  1211. Syntax: (deftype name lambda-list {decl | doc}* {form}*)
  1212. Defines a new type-specifier abbreviation in terms of an 'expansion' function
  1213.     (lambda lambda-list1 {decl}* {form}*)
  1214. where lambda-list1 is identical to LAMBDA-LIST except that all optional
  1215. parameters with no default value specified in LAMBDA-LIST defaults to the
  1216. symbol '*', but not to NIL.  When the type system of KCL encounters a
  1217. type specifier (NAME arg1 ... argn), it calls the expansion function with
  1218. the arguments arg1 ... argn, and uses the returned value instead of the
  1219. original type specifier.  When the symbol NAME is used as a type specifier,
  1220. the expansion function is called with no argument.  The doc-string DOC, if
  1221. supplied, is saved as the TYPE doc of NAME, and is retrieved by
  1222. (documentation 'NAME 'type).")
  1223.  
  1224. (docfun defun macro "
  1225. Syntax: (defun name lambda-list {decl | doc}* {form}*)
  1226. Defines a function as the global function definition of the symbol NAME.
  1227. The complete syntax of a lambda-list is:
  1228.     ({var}*
  1229.      [&optional {var | (var [initform [svar]])}*]
  1230.      [&rest var]
  1231.      [&key {var | ({var | (keyword var)} [initform [svar]])}*
  1232.            [&allow-other-keys]]
  1233.      [&aux {var | (var [initform])}*])
  1234. The doc-string DOC, if supplied, is saved as a FUNCTION doc and can be
  1235. retrieved by (documentation 'NAME 'function).")
  1236.  
  1237. (docfun defvar macro "
  1238. Syntax: (defvar name [initial-value [doc]])
  1239. Declares the variable NAME as a special variable and, optionally, initializes
  1240. it.  The doc-string DOC, if supplied, is saved as a VARIABLE doc and can be
  1241. retrieved by (documentation 'NAME 'variable).")
  1242.  
  1243. (docfun delete function "
  1244. Args: (item sequence
  1245.        &key (from-end nil) (test #'eql) test-not (start 0)
  1246.             (end (length sequence)) (count most-positive-fixnum)
  1247.             (key #'identity))
  1248. Returns a sequence formed by removing the specified ITEM destructively from
  1249. SEQUENCE.")
  1250.  
  1251. (docfun delete-duplicates function "
  1252. Args: (sequence &key (from-end nil) (test #'eql) test-not (start 0)
  1253.                      (end (length sequence)) (key #'identity))
  1254. Returns a sequence formed by removing duplicated elements destructively from
  1255. SEQUENCE.")
  1256.  
  1257. (docfun delete-file function "
  1258. Args: (file)
  1259. Deletes FILE.")
  1260.  
  1261. (docfun delete-if function "
  1262. Args: (test sequence
  1263.        &key (from-end nil) (start 0) (end (length sequence))
  1264.             (count most-positive-fixnum) (key #'identity))
  1265. Returns a sequence formed by removing the elements satisfying TEST
  1266. destructively from SEQUENCE.")
  1267.  
  1268. (docfun delete-if-not function "
  1269. Args: (test sequence
  1270.        &key (from-end nil) (start 0) (end (length sequence))
  1271.             (count most-positive-fixnum) (key #'identity))
  1272. Returns a sequence formed by destructively removing the elements not
  1273. satisfying TEST from SEQUENCE.")
  1274.  
  1275. (docfun denominator function "
  1276. Args: (rational)
  1277. Returns the denominator of RATIONAL as an integer.")
  1278.  
  1279. (docfun deposit-field function "
  1280. Args: (newbyte bytespec integer)
  1281. Returns an integer computed by replacing the specified byte of INTEGER with
  1282. the specified byte of NEWBYTE.")
  1283.  
  1284. (docfun describe function "
  1285. Args: (x)
  1286. Prints a description of the object X.")
  1287.  
  1288. (docfun digit-char function "
  1289. Args: (digit &optional (radix 10) (font 0))
  1290. Returns a character object that represents the DIGIT in the specified RADIX.
  1291. Returns NIL if no such character exists.")
  1292.  
  1293. (docfun digit-char-p function "
  1294. Args: (char &optional (radix 10))
  1295. If CHAR represents a digit in RADIX, then returns the weight as an integer.
  1296. Otherwise, returns nil.")
  1297.  
  1298. (docfun directory function "
  1299. Args: (name)
  1300. Returns a list of files that match NAME.  NAME may be a string, a pathname,
  1301. or a file stream.")
  1302.  
  1303. (docfun directory-namestring function "
  1304. Args: (pathname)
  1305. Returns the directory part of PATHNAME as a string.")
  1306.  
  1307. (docfun disassemble function "
  1308. Args: (&optional (thing nil) &key (h-file nil) (data-file nil))
  1309. Compiles the form specified by THING and prints the intermediate C language
  1310. code for that form.  But does NOT install the result of compilation.
  1311. If THING is NIL, then the previously disassembled form is re-disassembled.
  1312. If THING is a symbol that names a not-yet-compiled function, the function
  1313. definition is disassembled.
  1314. If THING is a lambda expression, it is disassembled as a function definition.
  1315. Otherwise, THING itself is disassembled as a top-level form.")
  1316.  
  1317. (docfun do macro "
  1318. Syntax: (do ({(var [init [step]])}*) (endtest {result}*)
  1319.           {decl}* {tag | statement}*)
  1320. Creates a NIL block, binds each VAR to the value of the corresponding INIT,
  1321. and then executes STATEMENTs repeatedly until ENDTEST is satisfied.  After
  1322. each iteration, assigns to each VAR the value of the corresponding STEP.  When
  1323. ENDTEST is satisfied, evaluates RESULTs as a PROGN and returns the value(s) of
  1324. the last RESULT (or NIL if no RESULTs are supplied).  Performs variable
  1325. bindings and assignments all at once, just like LET and PSETQ do.")
  1326.  
  1327. (docfun do* macro "
  1328. Syntax: (do* ({(var [init [step]])}*) (endtest {result}*)
  1329.           {decl}* {tag | statement}*)
  1330. Just like DO, but performs variable bindings and assignments in serial, just
  1331. like LET* and SETQ do.")
  1332.  
  1333. (docfun do-all-symbols macro "
  1334. Syntax: (do-all-symbols (var [result-form]) {decl}* {tag | statement}*)
  1335. Executes STATEMENTs once for each symbol in each package, with VAR bound to
  1336. the current symbol.  Then evaluates RESULT-FORM (which defaults to NIL) and
  1337. returns the value(s).")
  1338.  
  1339. (docfun do-external-symbols macro "
  1340. Syntax: (do-external-symbols (var [package [result-form]])
  1341.           {decl}* {tag | statement}*)
  1342. Executes STATEMENTs once for each external symbol in the PACKAGE (which
  1343. defaults to the current package), with VAR bound to the current symbol.
  1344. Then evaluates RESULT-FORM (which defaults to NIL) and returns the value(s).")
  1345.  
  1346. (docfun do-symbols macro "
  1347. Syntax: (do-symbols (var [package [result-form]]) {decl}* {tag | statement}*)
  1348. Executes STATEMENTs once for each symbol in the PACKAGE (which defaults to
  1349. the current package), with VAR bound to the current symbol.  Then evaluates
  1350. RESULT-FORM (which defaults to NIL) and returns the value(s).")
  1351.  
  1352. (docfun documentation function "
  1353. Args: (symbol doc-type)
  1354. Returns the doc-string of DOC-TYPE for SYMBOL; NIL if none exists.
  1355. Possible doc-types are:
  1356.     FUNCTION  (special forms, macros, and functions)
  1357.     VARIABLE  (dynamic variables, including constants)
  1358.     TYPE      (types defined by DEFTYPE)
  1359.     STRUCTURE (structures defined by DEFSTRUCT)
  1360.     SETF      (SETF methods defined by DEFSETF, DEFINE-SETF-METHOD, and
  1361.                DEFINE-MODIFY-MACRO)
  1362. All built-in special forms, macros, functions, and variables have their
  1363. doc-strings.")
  1364.  
  1365. (docfun dolist macro "
  1366. Syntax: (dolist (var listform [result]) {decl}* {tag | statement}*)
  1367. Executes STATEMENTs, with VAR bound to each member of the list value of
  1368. LISTFORM.  Then returns the value(s) of RESULT (which defaults to NIL).")
  1369.  
  1370. (docfun dotimes macro "
  1371. Syntax: (dotimes (var countform [result]) {decl}* {tag | statement}*)
  1372. Executes STATEMENTs, with VAR bound to each number between 0 (inclusive) and
  1373. the value of COUNTFORM (exclusive).  Then returns the value(s) of RESULT
  1374. (which defaults to NIL).")
  1375.  
  1376. (docvar double-float-epsilon constant "
  1377. Same as LONG-FLOAT-EPSILON.")
  1378.  
  1379. (docvar double-float-negative-epsilon constant "
  1380. Same as LONG-FLOAT-NEGATIVE-EPSILON.")
  1381.  
  1382. (docfun dpb function "
  1383. Args: (newbyte bytespec integer)
  1384. Returns an integer computed by replacing the specified byte of INTEGER with
  1385. NEWBYTE.")
  1386.  
  1387. (docfun dribble function "
  1388. Args: (&optional pathname)
  1389. If PATHNAME is given, begins to record the interaction to the specified file.
  1390. If PATHNAME is not given, ends the recording.")
  1391.  
  1392. (docfun ecase macro "
  1393. Syntax: (ecase keyform {({key | ({key}*)} {form}*)}*)
  1394. Evaluates KEYFORM and tries to find the KEY that is EQL to the value of
  1395. KEYFORM.  If one is found, then evaluates FORMs that follow the KEY and
  1396. returns the value(s) of the last FORM.  If not, signals an error.")
  1397.  
  1398. (docfun ed function "
  1399. Args: (&optional x)
  1400. Invokes the editor.  The action depends on the version of KCL.  See the
  1401. KCL Report for details.")
  1402.  
  1403. (docfun eighth function "
  1404. Args: (x)
  1405. Equivalent to (CADDDR (CDDDDR X)).")
  1406.  
  1407. (docfun elt function "
  1408. Args: (sequence index)
  1409. Returns the INDEX-th element of SEQUENCE.")
  1410.  
  1411. (docfun encode-universal-time function "
  1412. Args: (second minute hour date month year &optional (timezone -9))
  1413. Does the inverse operation of DECODE-UNIVERSAL-TIME.")
  1414.  
  1415. (docfun endp function "
  1416. Args: (x)
  1417. Returns T if X is NIL.  Returns NIL if X is a cons.  Otherwise, signals an
  1418. error.")
  1419.  
  1420. (docfun enough-namestring function "
  1421. Args: (pathname &optional (defaults *default-pathname-defaults*))
  1422. Returns a string which uniquely identifies PATHNAME with respect to
  1423. DEFAULTS.")
  1424.  
  1425. (docfun eq function "
  1426. Args: (x y)
  1427. Returns T if X and Y are the same identical object; NIL otherwise.")
  1428.  
  1429. (docfun eql function "
  1430. Args: (x y)
  1431. Returns T if X and Y are EQ, or if they are numbers of the same type with
  1432. the same value, or if they are character objects that represent the same
  1433. character.  Returns NIL otherwise.")
  1434.  
  1435. (docfun equal function "
  1436. Args: (x y)
  1437. Returns T if X and Y are EQL or if they are of the same type and corresponding
  1438. components are EQUAL.  Returns NIL otherwise.  Strings and bit-vectors are
  1439. EQUAL if they are the same length and have identical components.  Other
  1440. arrays must be EQ to be EQUAL.")
  1441.  
  1442. (docfun equalp function "
  1443. Args: (x y)
  1444. Returns T if X and Y are EQUAL, if they are characters and satisfy CHAR-EQUAL,
  1445. if they are numbers and have the same numerical value, or if they have
  1446. components that are all EQUALP.  Returns NIL otherwise.")
  1447.  
  1448. (docfun error function "
  1449. Args: (control-string &rest args)
  1450. Signals a fatal error.")
  1451.  
  1452. (docvar *error-output* variable "
  1453. Holds the output stream for error messages.")
  1454.  
  1455. (docfun etypecase macro "
  1456. Syntax: (etypecase keyform {(type {form}*)}*)
  1457. Evaluates KEYFORM and tries to find the TYPE in which the value of KEYFORM
  1458. belongs.  If one is found, then evaluates FORMs that follow the KEY and
  1459. returns the value(s) of the last FORM.  If not, signals an error.")
  1460.  
  1461. (docfun eval function "
  1462. Args: (exp)
  1463. Evaluates EXP and returns the result(s).")
  1464.  
  1465. (docfun eval-when special "
  1466. Syntax: (eval-when ({situation}*) {form}*)
  1467. A situation must be either COMPILE, LOAD, or EVAL.  The interpreter evaluates
  1468. only when EVAL is specified.  If COMPILE is specified, FORMs are evaluated
  1469. at compile time.  If LOAD is specified, the compiler arranges so that FORMs
  1470. be evaluated when the compiled code is loaded.")
  1471.  
  1472. (docvar *eval-when-compile* variable "
  1473. KCL specific: Tells the KCL compiler whether (non-NIL) or not (NIL) the
  1474. compiler should process top-level forms in compile-time-too mode.")
  1475.  
  1476. (docfun evalhook function "
  1477. Args: (form evalhookfn applyhookfn &optional (env nil))
  1478. Evaluates FORM with *EVALHOOK* bound to EVALHOOKFN and *APPLYHOOK* bound
  1479. to APPLYHOOKFN.  Ignores these hooks once, for the top-level evaluation
  1480. of FORM.")
  1481.  
  1482. (docvar *evalhook* variable "
  1483. If *EVALHOOK* is not NIL, its value must be a function that can receive
  1484. two arguments: a form to evaluate and an environment.  This function does
  1485. the evaluation instead of EVAL.")
  1486.  
  1487. (docfun evenp function "
  1488. Args: (integer)
  1489. Returns T if INTEGER is even.  Returns NIL if INTEGER is odd.")
  1490.  
  1491. (docfun every function "
  1492. Args: (predicate sequence &rest more-sequences)
  1493. Returns T if every elements of SEQUENCEs satisfy PREDICATE; NIL otherwise.")
  1494.  
  1495. (docfun exp function "
  1496. Args: (number)
  1497. Calculates e raised to the power NUMBER, where e is the base of natural
  1498. logarithms.")
  1499.  
  1500. (docfun export function "
  1501. Args: (symbols &optional (package *package*))
  1502. Makes SYMBOLS external symbols of PACKAGE.  SYMBOLS must be a list of symbols
  1503. or a symbol.")
  1504.  
  1505. (docfun expt function "
  1506. Args: (base-number power-number)
  1507. Returns BASE-NUMBER raised to the power POWER-NUMBER.")
  1508.  
  1509. (docfun fboundp function "
  1510. Args: (symbol)
  1511. Returns T if SYMBOL has a global function definition or if SYMBOL names a
  1512. special form or a macro; NIL otherwise.")
  1513.  
  1514. (docfun fceiling function "
  1515. Args: (number &optional (divisor 1))
  1516. Same as CEILING, but returns a float as the first value.")
  1517.  
  1518. (docvar *features* variable "
  1519. List of symbols that name features of the current version of KCL.
  1520. These features are used to decide the read-time conditionalization facility
  1521. provided by '#+' and '#-' read macros.  When the KCL reader encounters
  1522.     #+ feature-description form
  1523. it reads FORM in the usual manner if FEATURE-DESCRIPTION is true.  Otherwise,
  1524. the reader just skips FORM.
  1525.     #- feature-description form
  1526. is equivalent to
  1527.     #- (not feature-description) form
  1528. A feature-description may be a symbol, which is true only when it is an
  1529. element of *FEATURES*.  Or else, it must be one of the following:
  1530.     (and feature-desciption-1 ... feature-desciption-n)
  1531.     (or  feature-desciption-1 ... feature-desciption-n)
  1532.     (not feature-desciption)
  1533. The AND description is true only when all of its sub-descriptions are true.
  1534. The OR description is true only when at least one of its sub-descriptions is
  1535. true.  The NOT description is true only when its sub-description is false.")
  1536.  
  1537. (docfun ffloor function "
  1538. Args: (number &optional (divisor 1))
  1539. Same as FLOOR, but returns a float as the first value.")
  1540.  
  1541. (docfun fifth function "
  1542. Args: (x)
  1543. Equivalent to (CAR (CDDDDR X)).")
  1544.  
  1545. (docfun file-author function "
  1546. Args: (file)
  1547. Returns the author name of the specified file, as a string.
  1548. FILE may be a string or a stream")
  1549.  
  1550. (docfun file-length function "
  1551. Args: (file-stream)
  1552. Returns the length of the specified file stream.")
  1553.  
  1554. (docfun file-namestring function "
  1555. Args: (pathname)
  1556. Returns the written representation of PATHNAME as a string.")
  1557.  
  1558. (docfun file-position function "
  1559. Args: (file-stream &optional position)
  1560. Sets the file pointer of the specified file to POSITION, if POSITION is given.
  1561. Otherwise, returns the current file position of the specified file.")
  1562.  
  1563. (docfun file-write-date function "
  1564. Args: (file)
  1565. Returns the time at which the specified file is written, as an integer in
  1566. universal time format.  FILE may be a string or a stream.")
  1567.  
  1568. (docfun fill function "
  1569. Args: (sequence item &key (start 0) (end (length sequence)))
  1570. Replaces the specified elements of SEQUENCE all with ITEM.")
  1571.  
  1572. (docfun fill-pointer function "
  1573. Args: (vector)
  1574. Returns the fill pointer of VECTOR.")
  1575.  
  1576. (docfun find function "
  1577. Args: (item sequence
  1578.        &key (from-end nil) (test #'eql) test-not (start 0)
  1579.             (end (length sequence)) (key #'identity))
  1580. Returns the first element in SEQUENCE satisfying TEST with ITEM; NIL if no
  1581. such element exists.")
  1582.  
  1583. (docfun find-all-symbols function "
  1584. Args: (string-or-symbol)
  1585. Returns a list of all symbols that have the specified name.")
  1586.  
  1587. (docfun find-if function "
  1588. Args: (test sequence
  1589.        &key (from-end nil) (start 0) (end (length sequence)) (key #'identity))
  1590. Returns the index of the first element in SEQUENCE that satisfies TEST; NIL if
  1591. no such element exists.")
  1592.  
  1593. (docfun find-if-not function "
  1594. Args: (test sequence
  1595.        &key (from-end nil) (start 0) (end (length sequence)) (key #'identity))
  1596. Returns the index of the first element in SEQUENCE that does not satisfy
  1597. TEST; NIL if no such element exists.")
  1598.  
  1599. (docfun find-package function "
  1600. Args: (name)
  1601. Returns the specified package if it already exists; NIL otherwise.  NAME may
  1602. be a string that is the name or nickname of the package.  NAME may also be
  1603. a symbol, in which case the symbol's print name is used.")
  1604.  
  1605. (docfun find-symbol function "
  1606. Args: (name &optional (package *package*))
  1607. Returns the symbol named NAME in PACKAGE.  If such a symbol is found, then
  1608. the second value is :INTERN, :EXTERNAL, or :INHERITED to indicate how the
  1609. symbol is accessible.  If no symbol is found then both values are NIL.")
  1610.  
  1611. (docfun finish-output function "
  1612. Args: (&optional (stream *standard-output*))
  1613. Attempts to ensure that all output sent to STREAM has reached its destination,
  1614. and only then returns.")
  1615.  
  1616. (docfun first function "
  1617. Args: (x)
  1618. Equivalent to (CAR X).")
  1619.  
  1620. (doctype fixnum "
  1621. A fixnum is an integer between MOST-NEGATIVE-FIXNUM (= -2147483648) and
  1622. MOST-POSITIVE-FIXNUM (= 2147483647), inclusive.  Other integers are bignums.")
  1623.  
  1624. (docfun flet special "
  1625. Syntax: (flet ({(name lambda-list {decl | doc}* {form}*)}*) . body)
  1626. Evaluates BODY as a PROGN, with local function definitions in effect.  BODY is
  1627. the scope of each local function definition.  Since the scope does not include
  1628. the function definitions themselves, the local function can reference
  1629. externally defined functions of the same name.  See the doc of DEFUN for the
  1630. complete syntax of a lambda-list.  Doc-strings for local functions are simply
  1631. ignored.")
  1632.  
  1633. (doctype float "
  1634. KCL supports two formats for floating-point numbers.  One format is called
  1635. SHORT-FLOAT and the other format is called SINGLE-FLOAT, DOUBLE-FLOAT, or
  1636. LONG-FLOAT.  Precisions and exponent sizes of floating-point numbers depends
  1637. on the version of KCL.  See the KCL Report at your hand for details.
  1638. The following syntax is used to denote a floating-point number.
  1639.     { [sign] {radix-10-digit}* decimal-point {radix-10-digit}+ [exponent]
  1640.     | [sign] {radix-10-digit}+ [decimal-point {radix-10-digit}*}] exponent
  1641.     }
  1642. where EXPONENT is
  1643.     { e | s | f | d | l | E | S | F | D | L } [sign] {radix-10-digit}+
  1644. See the type doc of INTEGER for the syntactic variables used here.  The
  1645. exponent markers in EXPONENT have the following interpretations.
  1646.     e or E    floating-point number in the default float format
  1647.     s or S    short-float
  1648.     f or F    single-float
  1649.     d or D    double-float
  1650.     l or L    long-float
  1651. The default float format is single-float normally, but may be any other float
  1652. format.  See the variable doc of *READ-DEFAULT-FLOAT-FORMAT*.")
  1653.  
  1654. (docfun float function "
  1655. Args: (number &optional other)
  1656. Converts a non-complex number to a floating-point number.  If NUMBER is
  1657. already a float, FLOAT simply returns NUMBER.  Otherwise, the format of
  1658. the returned float depends on OTHER;  If OTHER is not provided, FLOAT returns
  1659. a SINGLE-FLOAT.  If OTHER is provided, the result is in the same float format
  1660. as OTHER's.")
  1661.  
  1662. (docfun float-digits function "
  1663. Args: (float)
  1664. Returns the number of radix-B digits used to represent the significand F of
  1665. the floating-point number, where B = (FLOAT-RADIX FLOAT).")
  1666.  
  1667. (docfun float-precision function "
  1668. Args: (float)
  1669. Returns the number of significant radix-B digits used to represent the
  1670. significand F of the floating-point number, where B = (FLOAT-RADIX FLOAT).")
  1671.  
  1672. (docfun float-radix function "
  1673. Args: (float)
  1674. Returns the representation radix (or base) of the floating-point number.")
  1675.  
  1676. (docfun float-sign function "
  1677. Args: (float1 &optional (float2 (float 1 float1)))
  1678. Returns a floating-point number with the same sign as FLOAT1 and with the
  1679. same absolute value as FLOAT2.")
  1680.  
  1681. (docfun floatp function "
  1682. Args: (x)
  1683. Returns T if X is a floating-point number; NIL otherwise.")
  1684.  
  1685. ;;; here
  1686.  
  1687. (docfun floor function "
  1688. Args: (number &optional (divisor 1))
  1689. Returns the largest integer not larger than the NUMBER divided by DIVISOR.
  1690. The second returned value is (- NUMBER (* first-value DIVISOR)).")
  1691.  
  1692. (docfun fmakunbound function "
  1693. Args: (symbol)
  1694. Discards the global function definition named by SYMBOL.  Returns SYMBOL.")
  1695.  
  1696. (docfun force-output function "
  1697. Args: (&optional (stream *standard-output*))
  1698. Attempts to force any buffered output to be sent.")
  1699.  
  1700. (docfun format function "
  1701. Args: (destination control-string &rest arguments)
  1702. Provides various facilities for formatting output.  CONTROL-STRING is a string
  1703. to be output, possibly with embedded formatting directives, which are flagged
  1704. with the escape character \"~\".  Directives generally expand into additional
  1705. text to be output, usually consuming one or more of ARGUMENTs in the process.
  1706. A few useful directives are:
  1707.  
  1708. ~A, ~nA, ~n@A    Prints one argument as if by PRINC
  1709. ~S, ~nS, ~n@S    Prints one argument as if by PRIN1
  1710. ~D, ~B, ~O, ~X    Prints one integer in decimal, binary, octal, and hexa
  1711. ~%        Does TERPRI
  1712. ~&        Does FRESH-LINE
  1713.  
  1714. where n is the minimal width of the field in which the object is printed.
  1715. ~nA and ~nS put padding spaces on the right; ~n@A and ~n@S put on the left.
  1716.  
  1717. DESTINATION controls where the result will go.  If DESTINATION is T, then
  1718. the output is sent to the standard output stream.  If it is NIL, then the
  1719. output is returned in a string as the value of the call.  Otherwise,
  1720. DESTINATION must be a stream to which the output will be sent.")
  1721.  
  1722. (docfun fourth function "
  1723. Args: (x)
  1724. Equivalent to (CADDDR X).")
  1725.  
  1726. (docfun fresh-line function "
  1727. Args: (&optional (stream *standard-output*))
  1728. Outputs a newline if it is not positioned at the beginning of a line.  Returns
  1729. T if it output a newline; NIL otherwise.")
  1730.  
  1731. (docfun fround function "
  1732. Args: (number &optional (divisor 1))
  1733. Same as ROUND, but returns first value as a float.")
  1734.  
  1735. (docfun ftruncate function "
  1736. Args: (number &optional (divisor 1))
  1737. Same as TRUNCATE, but returns first value as a float.")
  1738.  
  1739. (docfun funcall function "
  1740. Args: (function &rest arguments)
  1741. Applies FUNCTION to the ARGUMENTs")
  1742.  
  1743. (doctype function "
  1744. A function is anything that may be correctly given to the FUNCALL or APPLY
  1745. function, and is to be executed as code when arguments are supplied.
  1746. A function is either:
  1747.     * a compiled function (compiled-function or compiled-closure)
  1748.     * a list in one of the following format.
  1749.        (lambda lambda-list . body)
  1750.        (lambda-block block-name lambda-list . body)
  1751.        (lambda-closure env1 env2 env3 lambda-list . body)
  1752.        (lambda-block-closure env1 env2 env3 block-name lambda-list . body)
  1753.      where env1, env2, and env3 respectively represent the variable
  1754.      environment, the function/macro environment, and the block/tagbody
  1755.      environment at the time of the function creation.
  1756.     * a symbol that names a function.
  1757. See the doc of DEFUN for the complete syntax of a lambda-list.")
  1758.  
  1759. (docfun function special "
  1760. Syntax: (function x) or #'x
  1761. If X is a lambda expression, creates and returns a lexical closure of X in
  1762. the current lexical environment.  If X is a symbol that names a function,
  1763. returns that function.")
  1764.  
  1765. (docfun functionp function "
  1766. Args: (x)
  1767. Returns T if X is a function, suitable for use by FUNCALL or APPLY.  Returns
  1768. NIL otherwise.")
  1769.  
  1770. (docfun gbc function "
  1771. Args: (x)
  1772. KCL specific: Invokes the garbage collector (GC) with the collection level
  1773. specified by X.  NIL as the argument causes GC to collect cells only.  T as
  1774. the argument causes GC to collect everything.")
  1775.  
  1776. (docfun gcd function "
  1777. Args: (&rest integers)
  1778. Returns the greatest common divisor of INTEGERs.")
  1779.  
  1780. (docfun gensym function "
  1781. Args: (&optional (x nil))
  1782. Creates and returns a new uninterned symbol whose name is a prefix string
  1783. (defaults to \"G\"), followed by a decimal number.  The number is incremented
  1784. by each call to GENSYM.  X, if an integer, resets the counter.  If X is a
  1785. string, it becomes the new prefix.")
  1786.  
  1787. (docfun gentemp function "
  1788. Args: (&optional (prefix \"t\") (package *package*))
  1789. Creates a new symbol interned in the package PACKAGE with the given PREFIX.")
  1790.  
  1791. (docfun get function "
  1792. Args: (symbol indicator &optional (default nil))
  1793. Looks on the property list of SYMBOL for the specified INDICATOR.  If this
  1794. is found, returns the associated value.  Otherwise, returns DEFAULT.")
  1795.  
  1796. (docfun get-decoded-time function "
  1797. Args: ()
  1798. Returns the current time in decoded time format.  Returns nine values: second,
  1799. minute, hour, date, month, year, day-of-week, daylight-saving-time-p, and
  1800. time-zone.")
  1801.  
  1802. (docfun get-dispatch-macro-character function "
  1803. Args: (disp-char sub-char &optional (readtable *readtable*))
  1804. Returns the macro-character function for SUB-CHAR under DISP-CHAR.")
  1805.  
  1806. (docfun get-internal-real-time function "
  1807. Args: ()
  1808. Returns the real time in the internal time format.  This is useful for
  1809. finding elapsed time.")
  1810.  
  1811. (docfun get-internal-run-time function "
  1812. Args: ()
  1813. Returns the run time in the internal time format.  This is useful for
  1814. finding CPU usage.")
  1815.  
  1816. (docfun get-macro-character function "
  1817. Args: (char &optional (readtable *readtable*))
  1818. Returns the function associated with CHAR and, as a second value, returns
  1819. the non-terminating-p flag.")
  1820.  
  1821. (docfun get-output-stream-string function "
  1822. Args: (stream)
  1823. Returns a string of all the characters sent to STREAM made by
  1824. MAKE-STRING-OUTPUT-STREAM since the last call to this function.")
  1825.  
  1826. (docfun get-properties function "
  1827. Args: (place indicator-list)
  1828. Looks for the elements of INDICATOR-LIST in the property list stored in PLACE.
  1829. If found, returns the indicator, the value, and T as multiple-values.  If not,
  1830. returns NILs as its three values.")
  1831.  
  1832. (docfun get-setf-method function "
  1833. Args: (form)
  1834. Returns the five values (or five 'gangs') constituting the SETF method for
  1835. FORM.  See the doc of DEFINE-SETF-METHOD for the meanings of the gangs.  It
  1836. is an error if the third value (i.e., the list of store variables) is not a
  1837. one-element list.  See the doc of GET-SETF-METHOD-MULTIPLE-VALUE for
  1838. comparison.")
  1839.  
  1840. (docfun get-setf-method-multiple-value function "
  1841. Args: (form)
  1842. Returns the five values (or five 'gangs') constituting the SETF method for
  1843. FORM.  See the doc of DEFINE-SETF-METHOD for the meanings of the gangs.  The
  1844. third value (i.e., the list of store variables) may consist of any number of
  1845. elements.  See the doc of GET-SETF-METHOD for comparison.")
  1846.  
  1847. (docfun get-universal-time function "
  1848. Args: ()
  1849. Returns the current time as a single integer in universal time format.")
  1850.  
  1851. (docfun getf function "
  1852. Args: (place indicator &optional (default nil))
  1853. Searches the property list stored in Place for an indicator EQ to Indicator.
  1854. If one is found, the corresponding value is returned, else the Default is
  1855. returned.")
  1856.  
  1857. (docfun gethash function "
  1858. Args: (key hash-table &optional (default nil))
  1859. Finds the entry in HASH-TABLE whose key is KEY and returns the associated
  1860. value and T, as multiple values.  Returns DEFAULT and NIL if there is no
  1861. such entry.")
  1862.  
  1863. (docfun go special "
  1864. Syntax: (go tag)
  1865. Jumps to the specified TAG established by a lexically surrounding TAGBODY.")
  1866.  
  1867. (docfun graphic-char-p function "
  1868. Args: (char)
  1869. Returns T if CHAR is a printing character, i.e., #\\Space through #\\~;
  1870. NIL otherwise.")
  1871.  
  1872. (doctype hash-table "
  1873. Hash tables provide an efficient way of mapping any Lisp object to an
  1874. associated object.
  1875. A hash table is denoted as #<a hash-table>.")
  1876.  
  1877. (docfun hash-table-count function "
  1878. Args: (hash-table)
  1879. Returns the number of entries in the given Hash-Table.")
  1880.  
  1881. (docfun hash-table-p function "
  1882. Args: (x)
  1883. Returns T if X is a hash table object; NIL otherwise.")
  1884.  
  1885. (docfun help function "
  1886. Args: (&optional symbol)
  1887. KCL specific: Prints the documentation associated with SYMBOL.  With no
  1888. argument, this function prints the greeting message to KCL beginners.")
  1889.  
  1890. (docfun help* function "
  1891. Args: (string &optional (package 'lisp))
  1892. KCL specific: Prints the documentation associated with those symbols in the
  1893. specified package whose print names contain STRING as substring.  STRING may
  1894. be a symbol, in which case the print-name of that symbol is used.  If PACKAGE
  1895. is NIL, then all packages are searched.")
  1896.  
  1897. (docfun host-namestring function "
  1898. Args: (pathname)
  1899. Returns the host part of PATHNAME as a string.")
  1900.  
  1901. (docfun identity function "
  1902. Args: (x)
  1903. Simply returns X.")
  1904.  
  1905. (docfun if special "
  1906. Syntax: (if test then [else])
  1907. If TEST evaluates to non-NIL, then evaluates THEN and returns the result.
  1908. If not, evaluates ELSE (which defaults to NIL) and returns the result.")
  1909.  
  1910. (docvar *ignore-maximum-pages* variable "
  1911. KCL specific: Tells the KCL memory manager whether (non-NIL) or not (NIL) it
  1912. should expand memory whenever the maximum allocatable pages have been used
  1913. up.")
  1914.  
  1915. (docfun imagpart function "
  1916. Args: (number)
  1917. Extracts the imaginary part of NUMBER.")
  1918.  
  1919. (docfun import function "
  1920. Args: (symbols &optional (package *package*))
  1921. Makes SYMBOLS internal symbols of PACKAGE.  SYMBOLS must be a list of symbols
  1922. or a symbol.")
  1923.  
  1924. (docfun in-package function "
  1925. Args: (package-name &key (nicknames nil) (use '(lisp)))
  1926. Sets *PACKAGE* to the package with PACKAGE-NAME, creating the package if
  1927. it does not exist.  If the package already exists then it is modified
  1928. to agree with USE and NICKNAMES arguments.  Any new nicknames are added
  1929. without removing any old ones not specified.  If any package in the USE list
  1930. is not currently used, then it is added to the use list.")
  1931.  
  1932. (docfun incf macro "
  1933. Syntax: (incf place [delta])
  1934. Adds the number produced by DELTA (which defaults to 1) to the number
  1935. in PLACE.")
  1936.  
  1937. (docfun input-stream-p function "
  1938. Args: (stream)
  1939. Returns non-NIL if STREAM can handle input operations; NIL otherwise.")
  1940.  
  1941. (docfun inspect function "
  1942. Args: (x)
  1943. Shows the information about the object X in an interactive manner")
  1944.  
  1945. (docfun int-char function "
  1946. Args: (integer)
  1947. Performs the inverse of CHAR-INT.  Equivalent to CODE-CHAR in KCL.")
  1948.  
  1949. (doctype integer "
  1950. An integer represents a mathematical integer.  An integer may be a fixnum, or
  1951. else it is a bignum.  Normally, the following syntax is used to denote an
  1952. integer:
  1953.     { [sign]{digit-in-default-radix}+
  1954.       | {#b | #B} [sign] {radix-2-digit}+
  1955.       | {#o | #O} [sign] {radix-8-digit}+
  1956.       | [sign] {radix-10-digit}+ decimal-point
  1957.       | {#x | #X} [sign] {radix-16-digit}+
  1958.       | {#2r | #2R} [sign] {radix-2-digit}+
  1959.       ....
  1960.       | {#36r | #36R} [sign] {radix-36-digit}+  }
  1961. where SIGN is either '+' or '-', DECIMAL-POINT is '.', and
  1962.     digit-in-radix-2 ::= { 0 | 1 }
  1963.     ...
  1964.     digit-in-radix-10 ::= { 0 | 1 | ... | 9 }
  1965.     digit-in-radix-11 ::= { 0 | 1 | ... | 9 | a | A }
  1966.     ...
  1967.     digit-in-radix-36 ::= { 0 | 1 | ... | 9 | a | ... | z | A | ... | Z }
  1968. The default radix is 10 normally, but may be any integer between 2 and 36
  1969. inclusive.  See the variable docs of *PRINT-RADIX* and *READ-BASE*.")
  1970.  
  1971. (docfun integer-decode-float function "
  1972. Args: (float)
  1973. Returns, as three values, the integer interpretation of significand F,
  1974. the exponent E, and the sign S of the given float, so that
  1975.              E
  1976.     FLOAT = S * F * B    where B = (FLOAT-RADIX FLOAT)
  1977.  
  1978. F is a non-negative integer, E is an integer, and S is either 1 or -1.")
  1979.  
  1980. (docfun integer-length function "
  1981. Args: (integer)
  1982. Returns the number of significant bits in the absolute value of INTEGER.")
  1983.  
  1984. (docfun integerp function "
  1985. Args: (x)
  1986. Returns T if X is an integer (fixnum or bignum); NIL otherwise.")
  1987.  
  1988. (docfun intern function "
  1989. Args: (name &optional (package *package*))
  1990. Returns a symbol having the specified name, creating it if necessary.
  1991. Returns as the second value one of the symbols :INTERNAL, :EXTERNAL,
  1992. :INHERITED, and NIL.")
  1993.  
  1994. (docvar internal-time-units-per-second constant "
  1995. The number of internal time units that fit into a second.")
  1996.  
  1997. (docfun intersection function "
  1998. Args: (list1 list2 &key (test #'eql) test-not (key #'identity))
  1999. Returns the intersection of List1 and List2.")
  2000.  
  2001. (docfun isqrt function "
  2002. Args: (integer)
  2003. Returns the greatest integer less than or equal to the square root of the
  2004. given non-negative integer.")
  2005.  
  2006. (docfun keywordp function "
  2007. Args: (x)
  2008. Returns T if X is a symbol and it belongs to the KEYWORD package; NIL
  2009. otherwise.")
  2010.  
  2011. (docfun labels special "
  2012. Syntax: (labels ({(name lambda-list {decl | doc}* {form}*)}*) . body)
  2013. Evaluates BODY as a PROGN, with the local function definitions in effect.
  2014. The scope of the locally defined functions include the function definitions
  2015. themselves, so they can reference externally defined functions of the same
  2016. name.  See the doc of DEFUN for the complete syntax of a lambda-list.
  2017. Doc-strings for local functions are simply ignored.")
  2018.  
  2019. (docvar lambda-list-keywords constant "
  2020. List of all the lambda-list keywords used in KCL.")
  2021.  
  2022. (docvar lambda-parameters-limit constant "
  2023. The exclusive upper bound on the number of distinct parameter names that may
  2024. appear in a single lambda-list.  Actually, however, there is no such upper
  2025. bound in KCL.")
  2026.  
  2027. (docfun last function "
  2028. Args: (list)
  2029. Returns the last cons in LIST")
  2030.  
  2031. #+aosvs
  2032. (docfun last-termination-message function "
  2033. Args: ()
  2034. KCL specific: Flushes all the message currently spooled and returns the last
  2035. termination message as a string.  Only KCL/AOS supports this function.")
  2036.  
  2037. (docfun lcm function "
  2038. Args: (integer &rest more-integers)
  2039. Returns the least common multiple of the arguments.")
  2040.  
  2041. (docfun ldb function "
  2042. Args: (bytespec integer)
  2043. Extracts and right-justifies the specified byte of INTEGER, and returns the
  2044. result.")
  2045.  
  2046. (docfun ldb-test function "
  2047. Args: (bytespec integer)
  2048. Returns T if at least one of the bits in the specified bytes of INTEGER is 1;
  2049. NIL otherwise.")
  2050.  
  2051. (docfun ldiff function "
  2052. Args: (list sublist)
  2053. Returns a new list, whose elements are those of LIST that appear before
  2054. SUBLIST.  If SUBLIST is not a tail of LIST, a copy of LIST is returned.")
  2055.  
  2056. (docvar least-negative-double-float constant "
  2057. Same as LEAST-NEGATIVE-LONG-FLOAT.")
  2058.  
  2059. (docvar least-negative-long-float constant "
  2060. The negative long-float closest in value to zero.")
  2061.  
  2062. (docvar least-negative-short-float constant "
  2063. The negative short-float closest in value to zero.")
  2064.  
  2065. (docvar least-negative-single-float constant "
  2066. Same as LEAST-NEGATIVE-LONG-FLOAT.")
  2067.  
  2068. (docvar least-positive-double-float constant "
  2069. Same as LEAST-POSITIVE-LONG-FLOAT.")
  2070.  
  2071. (docvar least-positive-long-float constant "
  2072. The positive long-float closest in value to zero.")
  2073.  
  2074. (docvar least-positive-short-float constant "
  2075. The positive short-float closest in value to zero.")
  2076.  
  2077. (docvar least-positive-single-float constant "
  2078. Same as LEAST-POSITIVE-LONG-FLOAT.")
  2079.  
  2080. (docfun length function "
  2081. Args: (sequence)
  2082. Returns the length of SEQUENCE.")
  2083.  
  2084. (docfun let special "
  2085. Syntax: (let ({var | (var [value])}*) {decl}* {form}*)
  2086. Initializes VARs, binding them to the values of VALUEs (which defaults to NIL)
  2087. all at once, then evaluates FORMs as a PROGN.")
  2088.  
  2089. (docfun let* special "
  2090. Syntax: (let* ({var | (var [value])}*) {decl}* {form}*)
  2091. Initializes VARs, binding them to the values of VALUEs (which defaults to NIL)
  2092. from left to right, then evaluates FORMs as a PROGN.")
  2093.  
  2094. (docfun lisp-implementation-type function "
  2095. Args: ()
  2096. Returns a string that tells you that you are using a version of KCL.")
  2097.  
  2098. (docfun lisp-implementation-version function "
  2099. Args: ()
  2100. Returns a string that tells you when the current KCL implementation is
  2101. brought up.")
  2102.  
  2103. (doctype list "
  2104. A list is either NIL (the empty list) or a cons whose cdr is a list.
  2105. A list is denoted by writing its element in order, separated by blank space,
  2106. and surrounded by parentheses.
  2107. A dotted list is a cons whose cdr is either a non-cons object or a dotted
  2108. list.  A dotted list is denoted in the same way as a list is, but the last
  2109. cdr in the cdr chain is preceded by a dot '.' and blank space.
  2110.  
  2111. The backquote macro is sometimes useful to construct a compilcated list
  2112. structure.  When evaluating `(...)
  2113.     ,form embeds the value of FORM,
  2114.     ,@form and ,.form embed all elements of the list value of FORM,
  2115.     and other things embed itself
  2116. into the structure at their position.  For example,
  2117.     `(a b ,c d e) expands to (list* 'a 'b c '(d e))
  2118.     `(a b ,@c d e) expands to (list* 'a 'b (append c '(d e)))
  2119.     `(a b ,.c d e) expands to (list* 'a 'b (nconc c '(d e)))")
  2120.  
  2121. (docfun list function "
  2122. Args: (&rest args)
  2123. Returns a list of its arguments")
  2124.  
  2125. (docfun list* function "
  2126. Args: (arg &rest others)
  2127. Returns a list of its arguments with the last cons being a dotted pair of
  2128. the next to the last argument and the last argument.")
  2129.  
  2130. (docfun list-all-packages function "
  2131. Args: ()
  2132. Returns a list of all existing packages.")
  2133.  
  2134. (docfun list-length function "
  2135. Args: (list)
  2136. Returns the length of LIST, or NIL if LIST is circular.")
  2137.  
  2138. (docfun listen function "
  2139. Args: (&optional (stream *standard-input*))
  2140. Returns T if a character is available on STREAM; NIL otherwise.  This function
  2141. does not correctly work in some versions of KCL because of the lack of such
  2142. mechanism in the underlying operating system.")
  2143.  
  2144. (docfun listp function "
  2145. Args: (x)
  2146. Returns T if X is either a cons or NIL; NIL otherwise.")
  2147.  
  2148. (docfun load function "
  2149. Args: (filename
  2150.        &key (verbose *load-verbose*) (print nil) (if-does-not-exist :error))
  2151. Loads the file named by FILENAME into KCL.")
  2152.  
  2153. (docvar *load-verbose* variable "
  2154. The default for the VERBOSE argument to LOAD.")
  2155.  
  2156. (docfun locally macro "
  2157. Syntax: (locally {decl}* {form}*)
  2158. Gives local pervasive declarations.")
  2159.  
  2160. (docfun log function "
  2161. Args: (number &optional base)
  2162. Returns the logarithm of NUMBER in the base BASE.  BASE defaults to the base
  2163. of natural logarithms.")
  2164.  
  2165. (docfun logand function "
  2166. Args: (&rest integers)
  2167. Returns the bit-wise AND of its arguments.")
  2168.  
  2169. (docfun logandc1 function "
  2170. Args: (integer1 integer2)
  2171. Returns the logical AND of (LOGNOT INTEGER1) and INTEGER2.")
  2172.  
  2173. (docfun logandc2 function "
  2174. Args: (integer1 integer2)
  2175. Returns the logical AND of INTEGER1 and (LOGNOT INTEGER2).")
  2176.  
  2177. (docfun logbitp function "
  2178. Args: (index integer)
  2179. Returns T if the INDEX-th bit of INTEGER is 1.")
  2180.  
  2181. (docfun logcount function "
  2182. Args: (integer)
  2183. If INTEGER is negative, returns the number of 0 bits.  Otherwise, returns
  2184. the number of 1 bits.")
  2185.  
  2186. (docfun logeqv function "
  2187. Args: (&rest integers)
  2188. Returns the bit-wise EQUIVALENCE of its arguments.")
  2189.  
  2190. (docfun logior function "
  2191. Args: (&rest integers)
  2192. Returns the bit-wise INCLUSIVE OR of its arguments.")
  2193.  
  2194. (docfun lognand function "
  2195. Args: (integer1 integer2)
  2196. Returns the complement of the logical AND of INTEGER1 and INTEGER2.")
  2197.  
  2198. (docfun lognor function "
  2199. Args: (integer1 integer2)
  2200. Returns the complement of the logical OR of INTEGER1 and INTEGER2.")
  2201.  
  2202. (docfun lognot function "
  2203. Args: (integer)
  2204. Returns the bit-wise logical NOT of INTEGER.")
  2205.  
  2206. (docfun logorc1 function "
  2207. Args: (integer1 integer2)
  2208. Returns the logical OR of (LOGNOT INTEGER1) and INTEGER2.")
  2209.  
  2210. (docfun logorc2 function "
  2211. Args: (integer1 integer2)
  2212. Returns the logical OR of INTEGER1 and (LOGNOT INTEGER2).")
  2213.  
  2214. (docfun logtest function "
  2215. Args: (integer1 integer2)
  2216. Returns T if LOGAND of INTEGER1 and INTEGER2 is not zero; NIL otherwise.")
  2217.  
  2218. (docfun logxor function "
  2219. Args: (&rest integers)
  2220. Returns the bit-wise EXCLUSIVE OR of its arguments.")
  2221.  
  2222. (docvar long-float-epsilon constant "
  2223. The smallest positive long-float that satisfies
  2224.     (not (= (float 1 e) (+ (float 1 e) e))).")
  2225.  
  2226. (docvar long-float-negative-epsilon constant "
  2227. The smallest positive long-float that satisfies
  2228.     (not (= (float 1 e) (- (float 1 e) e))).")
  2229.  
  2230. (docfun long-site-name function "
  2231. Args: ()
  2232. Returns a string that identifies the physical location of the current KCL.")
  2233.  
  2234. (docfun loop macro "
  2235. Syntax: (loop {form}*)
  2236. Executes FORMs repeatedly until exited by a THROW or RETURN.  The FORMs are
  2237. surrounded by an implicit NIL block.")
  2238.  
  2239. (docfun lower-case-p function "
  2240. Args: (char)
  2241. Returns T if CHAR is a lower-case character; NIL otherwise.")
  2242.  
  2243. (docfun machine-instance function "
  2244. Args: ()
  2245. Returns a string that identifies the machine instance of the machine
  2246. on which KCL is currently running.")
  2247.  
  2248. (docfun machine-type function "
  2249. Args: ()
  2250. Returns a string that identifies the machine type of the machine
  2251. on which KCL is currently running.")
  2252.  
  2253. (docfun machine-version function "
  2254. Args: ()
  2255. Returns a string that identifies the machine version of the machine
  2256. on which KCL is currently running.")
  2257.  
  2258. (docfun macro-function function "
  2259. Args: (symbol)
  2260. If SYMBOL globally names a macro, then returns the expansion function.
  2261. Returns NIL otherwise.")
  2262.  
  2263. (docfun macroexpand function "
  2264. Args: (form &optional (env nil))
  2265. If FORM is a macro form, then expands it repeatedly until it is not a macro
  2266. any more.  Returns two values: the expanded form and a T-or-NIL flag
  2267. indicating whether the original form was a macro.")
  2268.  
  2269. (docfun macroexpand-1 function "
  2270. Args: (form &optional (env nil))
  2271. If FORM is a macro form, then expands it once.  Returns two values: the
  2272. expanded form and a T-or-NIL flag indicating whether the original form was
  2273. a macro.")
  2274.  
  2275. (docvar *macroexpand-hook* variable "
  2276. Holds a function that can take two arguments (a macro expansion function
  2277. and the macro form to be expanded) and returns the expanded form.  This
  2278. function is whenever a macro-expansion takes place.  Initially this is set to
  2279. #'FUNCALL.")
  2280.  
  2281. (docfun macrolet special "
  2282. Syntax: (macrolet ({(name defmacro-lambda-list {decl | doc}* . body)}*)
  2283.           {form}*)
  2284. Evaluates FORMs as a PROGN, with the local macro definitions in effect.
  2285. See the doc of DEFMACRO for the complete syntax of a defmacro-lambda-list.
  2286. Doc-strings for local macros are simply ignored.")
  2287.  
  2288. (docfun make-array function "
  2289. Args: (dimensions
  2290.        &key (element-type t) initial-element (initial-contents nil)
  2291.             (adjustable nil) (fill-pointer nil) (displaced-to nil)
  2292.             (displaced-index-offset 0))
  2293. Creates an array of the specified DIMENSIONS.  The default for INITIAL-
  2294. ELEMENT depends on ELEMENT-TYPE.")
  2295.  
  2296. (docfun make-broadcast-stream function "
  2297. Args: (&rest streams)
  2298. Returns an output stream which sends its output to all of the given streams.")
  2299.  
  2300. (docfun make-char function "
  2301. Args: (char &optional (bits 0) (font 0))
  2302. Returns a character object with the same code attribute as CHAR and with
  2303. the specified BITS and FONT attributes.")
  2304.  
  2305. (docfun make-concatenated-stream function "
  2306. Args: (&rest streams)
  2307. Returns a stream which takes its input from each of the STREAMs in turn,
  2308. going on to the next at end of stream.")
  2309.  
  2310. (docfun make-dispatch-macro-character function "
  2311. Args: (char &optional (non-terminating-p nil) (readtable *readtable*))
  2312. Causes the character CHAR to be a dispatching macro character in READTABLE.")
  2313.  
  2314. (docfun make-echo-stream function "
  2315. Args: (input-stream output-stream)
  2316. Returns a bidirectional stream which gets its input from INPUT-STREAM and
  2317. sends its output to OUTPUT-STREAM.  In addition, all input is echoed to
  2318. OUTPUT-STREAM.")
  2319.  
  2320. (docfun make-hash-table function "
  2321. Args: (&key (test 'eql) (size 1024) (rehash-size 1.5) (rehash-threshold 0.7))
  2322. Creates and returns a hash table.")
  2323.  
  2324. (docfun make-list function "
  2325. Args: (size &key (initial-element nil))
  2326. Creates and returns a list containing SIZE elements, each of which is
  2327. initialized to INITIAL-ELEMENT.")
  2328.  
  2329. (docfun make-package function "
  2330. Args: (package-name &key (nicknames nil) (use '(lisp)))
  2331. Makes a new package having the specified PACKAGE-NAME and NICKNAMES.  The
  2332. package will inherit all external symbols from each package in the USE list.")
  2333.  
  2334. (docfun make-pathname function "
  2335. Args: (&key (defaults (parse-namestring \"\"
  2336.                         (pathname-host *default-pathname-defaults*)))
  2337.             (host (pathname-host defaults))
  2338.             (device (pathname-device defaults))
  2339.             (directory (pathname-directory defaults))
  2340.             (name (pathname-name defaults))
  2341.             (type (pathname-type defaults))
  2342.             (version (pathname-version defaults)))
  2343. Create a pathname from HOST, DEVICE, DIRECTORY, NAME, TYPE and VERSION.")
  2344.  
  2345. (docfun make-random-state function "
  2346. Args: (&optional (state *random-state*))
  2347. Creates and returns a copy of the specified random state.  If STATE is NIL,
  2348. then the value of *RANDOM-STATE* is used.  If STATE is T, then returns a
  2349. random state object generated from the universal time.")
  2350.  
  2351. (docfun make-sequence function "
  2352. Args: (type length &key initial-element)
  2353. Returns a sequence of the given TYPE and LENGTH, with elements initialized
  2354. to INITIAL-ELEMENT.  The default value of INITIAL-ELEMENT depends on TYPE.")
  2355.  
  2356. (docfun make-string function "
  2357. Args: (size &key (initial-element #\\Space))
  2358. Creates and returns a new string of SIZE length whose elements are all
  2359. INITIAL-ELEMENT.")
  2360.  
  2361. (docfun make-string-input-stream function "
  2362. Args: (string &optional (start 0) (end (length string)))
  2363. Returns an input stream which will supply the characters of String between
  2364. Start and End in order.")
  2365.  
  2366. (docfun make-string-output-stream function "
  2367. Args: ()
  2368. Returns an output stream which will accumulate all output given it for
  2369. the benefit of the function GET-OUTPUT-STREAM-STRING.")
  2370.  
  2371. (docfun make-symbol function "
  2372. Args: (string)
  2373. Creates and returns a new uninterned symbol whose print name is STRING.")
  2374.  
  2375. (docfun make-synonym-stream function "
  2376. Args: (symbol)
  2377. Returns a stream which performs its operations on the stream which is the
  2378. value of the dynamic variable named by SYMBOL.")
  2379.  
  2380. (docfun make-two-way-stream function "
  2381. Args: (input-stream output-stream)
  2382. Returns a bidirectional stream which gets its input from INPUT-STREAM and
  2383. sends its output to OUTPUT-STREAM.")
  2384.  
  2385. (docfun makunbound function "
  2386. Args: (symbol)
  2387. Makes empty the value slot of SYMBOL.  Returns SYMBOL.")
  2388.  
  2389. (docfun map function "
  2390. Args: (result-type function sequence &rest more-sequences)
  2391. FUNCTION must take as many arguments as there are sequences provided.  The 
  2392. result is a sequence such that the i-th element is the result of applying
  2393. FUNCTION to the i-th elements of the SEQUENCEs.")
  2394.  
  2395. (docfun mapc function "
  2396. Args: (fun list &rest more-lists)
  2397. Applies FUN to successive cars of LISTs.  Returns the first LIST.")
  2398.  
  2399. (docfun mapcan function "
  2400. Args: (fun list &rest more-lists)
  2401. Applies FUN to successive cars of LISTs, NCONCs the results, and returns it.")
  2402.  
  2403. (docfun mapcar function "
  2404. Args: (fun list &rest more-lists)
  2405. Applies FUN to successive cars of LISTs and returns the results as a list.")
  2406.  
  2407. (docfun mapcon function "
  2408. Args: (fun list &rest more-lists)
  2409. Applies FUN to successive cdrs of LISTs, NCONCs the results, and returns it.")
  2410.  
  2411. (docfun maphash function "
  2412. Args: #'hash-table
  2413. For each entry in HASH-TABLE, calls FUNCTION on the key and value of the
  2414. entry; returns NIL.")
  2415.  
  2416. (docfun mapl function "
  2417. Args: (fun list &rest more-lists)
  2418. Applies FUN to successive cdrs of LISTs.  Returns the first LIST.")
  2419.  
  2420. (docfun maplist function "
  2421. Args: (fun list &rest more-lists)
  2422. Applies FUN to successive cdrs of LISTs and returns the results as a list.")
  2423.  
  2424. (docfun mask-field function "
  2425. Args: (bytespec integer)
  2426. Extracts the specified byte from INTEGER.")
  2427.  
  2428. (docfun max function "
  2429. Args: (number &rest more-numbers)
  2430. Returns the greatest of its arguments.")
  2431.  
  2432. (docfun maximum-allocatable-pages function "
  2433. Args: (type)
  2434. KCL specific: Returns the current maximum number of pages for the type class
  2435. of the KCL implementation type TYPE.")
  2436.  
  2437. (docfun maximum-contiguous-pages function "
  2438. Args: ()
  2439. KCL specific: Returns the current maximum number of pages for contiguous
  2440. blocks.")
  2441.  
  2442. (docfun member function "
  2443. Args: (item list &key (test #'eql) test-not (key #'identity))
  2444. Returns the tail of LIST beginning with the first ITEM.")
  2445.  
  2446. (docfun member-if function "
  2447. Args: (test list &key (key #'identity))
  2448. Returns the tail of LIST beginning with the first element satisfying TEST.")
  2449.  
  2450. (docfun member-if-not function "
  2451. Args: (test list &key (key #'identity))
  2452. Returns the tail of LIST beginning with the first element not satisfying
  2453. TEST.")
  2454.  
  2455. (docfun merge function "
  2456. Args: (result-type sequence1 sequence2 predicate &key (key #'identity))
  2457. SEQUENCE1 and SEQUENCE2 are destructively merged into a sequence of type
  2458. RESULT-TYPE using PREDICATE to order the elements.")
  2459.  
  2460. (docfun merge-pathnames function "
  2461. Args: (pathname
  2462.        &optional (defaults *default-pathname-defaults*) default-version)
  2463. Fills in unspecified slots of PATHNAME from DEFAULTS.  DEFAULT-VERSION
  2464. is ignored in KCL.")
  2465.  
  2466. (docfun min function "
  2467. Args: (number &rest more-numbers)
  2468. Returns the least of its arguments.")
  2469.  
  2470. (docfun minusp function "
  2471. Args: (number)
  2472. Returns T if NUMBER < 0; NIL otherwise.")
  2473.  
  2474. (docfun mismatch function "
  2475. Args: (sequence1 sequence2
  2476.        &key (from-end nil) (test #'eql) test-not (start1 0) (start2 0)
  2477.             (end1 (length sequence1)) (end2 (length sequence2))
  2478.             (key #'identity))
  2479. The specified subsequences of SEQUENCE1 and SEQUENCE2 are compared
  2480. element-wise.  If they are of equal length and match in every element, the
  2481. result is NIL.  Otherwise, the result is a non-negative integer, the index
  2482. within SEQUENCE1 of the leftmost position at which they fail to match; or, if
  2483. one is shorter than and a matching prefix of the other, the index within
  2484. SEQUENCE1 beyond the last position tested is returned.")
  2485.  
  2486. (docfun mod function "
  2487. Args: (number divisor)
  2488. Returns the second result of (FLOOR NUMBER DIVISOR).")
  2489.  
  2490. (docvar *modules* variable "
  2491. A list of names of the modules that have been loaded into KCL.")
  2492.  
  2493. (docvar most-negative-double-float constant "
  2494. Same as MOST-NEGATIVE-LONG-FLOAT.")
  2495.  
  2496. (docvar most-negative-fixnum constant "
  2497. The fixnum closest in value to negative infinity.")
  2498.  
  2499. (docvar most-negative-long-float constant "
  2500. The long-float closest in value to negative infinity.")
  2501.  
  2502. (docvar most-negative-short-float constant "
  2503. The short-float closest in value to negative infinity.")
  2504.  
  2505. (docvar most-negative-single-float constant "
  2506. Same as MOST-NEGATIVE-LONG-FLOAT.")
  2507.  
  2508. (docvar most-positive-double-float constant "
  2509. Same as MOST-POSITIVE-LONG-FLOAT.")
  2510.  
  2511. (docvar most-positive-fixnum constant "
  2512. The fixnum closest in value to positive infinity.")
  2513.  
  2514. (docvar most-positive-long-float constant "
  2515. The long-float closest in value to positive infinity.")
  2516.  
  2517. (docvar most-positive-short-float constant "
  2518. The short-float closest in value to positive infinity.")
  2519.  
  2520. (docvar most-positive-single-float constant "
  2521. Same as MOST-POSITIVE-LONG-FLOAT.")
  2522.  
  2523. (docfun multiple-value-bind macro "
  2524. Syntax: (multiple-value-bind ({var}*) values-form {decl}* {form}*)
  2525. Binds the VARiables to the results of VALUES-FORM, in order (defaulting to
  2526. NIL) and evaluates FORMs in order.")
  2527.  
  2528. (docfun multiple-value-call special "
  2529. Syntax: (multiple-value-call function {form}*)
  2530. Calls FUNCTION with all the values of FORMs as arguments.")
  2531.  
  2532. (docfun multiple-value-list macro "
  2533. Syntax: (multiple-value-list form)
  2534. Evaluates FORM, and returns a list of multiple values it returned.")
  2535.  
  2536. (docfun multiple-value-prog1 special "
  2537. Syntax: (multiple-value-prog1 form {form}*)
  2538. Evaluates the first FORM, saves all the values produced, then evaluates
  2539. the other FORMs.  Returns the saved values.")
  2540.  
  2541. (docfun multiple-value-setq macro "
  2542. Syntax: (multiple-value-setq variables form)
  2543. Sets each variable in the list VARIABLES to the corresponding value of FORM.
  2544. Returns the value assigned to the first variable.")
  2545.  
  2546. (docvar multiple-values-limit constant "
  2547. The exclusive upper bound on the number of values that may be returned from
  2548. a function.  Actually, however, there is no such upper bound in KCL.")
  2549.  
  2550. (docfun name-char function "
  2551. Args: (name)
  2552. Given an argument acceptable to string,
  2553. Returns a character object whose name is NAME if one exists.  Returns NIL
  2554. otherwise.  NAME must be an object that can be coerced to a string.")
  2555.  
  2556. (docfun namestring function "
  2557. Args: (pathname)
  2558. Returns the full form of PATHNAME as a string.")
  2559.  
  2560. (docfun nbutlast function "
  2561. Args: (list &optional (n 1))
  2562. Changes the cdr of the N+1 th cons from the end of the list LIST to NIL.
  2563. Returns the whole list.")
  2564.  
  2565. (docfun nconc function "
  2566. Args: (&rest lists)
  2567. Concatenates LISTs by destructively modifying them.")
  2568.  
  2569. (doctype nil "
  2570. The type NIL is a subtype of every type.  No object belongs to this type.")
  2571.  
  2572. (docvar nil constant "
  2573. Holds NIL.")
  2574.  
  2575. (docfun nintersection function "
  2576. Args: (list1 list2 &key (test #'eql) test-not (key #'identity))
  2577. Returns the intersection of LIST1 and LIST2.  LIST1 may be destroyed.")
  2578.  
  2579. (docfun ninth function "
  2580. Args: (x)
  2581. Equivalent to (CAR (CDDDDR (CDDDDR X))).")
  2582.  
  2583. (docfun not function "
  2584. Args: (x)
  2585. Returns T if X is NIL; NIL otherwise.")
  2586.  
  2587. (docfun notany function "
  2588. Args: (predicate sequence &rest more-sequences)
  2589. Returns T if none of the elements in SEQUENCEs satisfies PREDICATE; NIL
  2590. otherwise.")
  2591.  
  2592. (docfun notevery function "
  2593. Args: (predicate sequence &rest more-sequences)
  2594. Returns T if at least one of the elements in SEQUENCEs does not satisfy
  2595. PREDICATE; NIL otherwise.")
  2596.  
  2597. (docfun nreconc function "
  2598. Args: (x y)
  2599. Equivalent to (NCONC (NREVERSE X) Y).")
  2600.  
  2601. (docfun nreverse function "
  2602. Args: (sequence)
  2603. Returns a sequence of the same elements as SEQUENCE but in reverse order.
  2604. SEQUENCE may be destroyed.")
  2605.  
  2606. (docfun nset-difference function "
  2607. Args: (list1 list2 &key (test #'eql) test-not (key #'identity))
  2608. Returns a list of elements of LIST1 that do not appear in LIST2.  LIST1 may
  2609. be destroyed.")
  2610.  
  2611. (docfun nset-exclusive-or function "
  2612. Args: (list1 list2 &key (test #'eql) test-not (key #'identity))
  2613. Returns a list with elements which appear but once in LIST1 and LIST2.")
  2614.  
  2615. (docfun nstring-capitalize function "
  2616. Args: (string &key (start 0) (end (length string)))
  2617. Returns STRING with the first character of each word converted to upper-case,
  2618. and remaining characters in the word converted to lower case.")
  2619.  
  2620. (docfun nstring-downcase function "
  2621. Args: (string &key (start 0) (end (length string)))
  2622. Returns STRING with all upper case characters converted to lowercase.")
  2623.  
  2624. (docfun nstring-upcase function "
  2625. Args: (string &key (start 0) (end (length string)))
  2626. Returns STRING with all lower case characters converted to uppercase.")
  2627.  
  2628. (docfun nsublis function "
  2629. Args: (alist tree &key (test #'eql) test-not (key #'identity))
  2630. Substitutes from ALIST for subtrees of TREE.")
  2631.  
  2632. (docfun nsubst function "
  2633. Args: (new old tree &key (test #'eql) test-not (key #'identity))
  2634. Substitutes NEW for subtrees in TREE that match OLD.")
  2635.  
  2636. (docfun nsubst-if function "
  2637. Args: (new test tree &key (key #'identity))
  2638. Substitutes NEW for subtrees of TREE that satisfy TEST.")
  2639.  
  2640. (docfun nsubst-if-not function "
  2641. Args: (new test tree &key (key #'identity))
  2642. Substitutes NEW for subtrees of TREE that do not satisfy TEST.")
  2643.  
  2644. (docfun nsubstitute function "
  2645. Args: (newitem olditem sequence
  2646.        &key (from-end nil) (test #'eql) test-not (start 0)
  2647.             (end (length sequence)) (count most-positive-fixnum)
  2648.             (key #'identity))
  2649. Returns a sequence of the same kind as SEQUENCE with the same elements
  2650. except that OLDITEMs are replaced with NEWITEM.  SEQUENCE may be destroyed.")
  2651.  
  2652. (docfun nsubstitute-if function "
  2653. Args: (new test sequence
  2654.        &key (from-end nil) (start 0) (end (length sequence))
  2655.             (count most-positive-fixnum) (key #'identity))
  2656. Returns a sequence of the same kind as SEQUENCE with the same elements
  2657. except that all elements satisfying TEST are replaced with NEWITEM.  SEQUENCE
  2658. may be destroyed.")
  2659.  
  2660. (docfun nsubstitute-if-not function "
  2661. Args: (new test sequence
  2662.        &key (from-end nil) (start 0) (end (length sequence))
  2663.             (count most-positive-fixnum) (key #'identity))
  2664. Returns a sequence of the same kind as SEQUENCE with the same elements
  2665. except that all elements not satisfying TEST are replaced with NEWITEM.
  2666. SEQUENCE may be destroyed.")
  2667.  
  2668. (docfun nth function "
  2669. Args: (n list)
  2670. Returns the N-th element of LIST, where the car of LIST is the zeroth
  2671. element.")
  2672.  
  2673. (docfun nthcdr function "
  2674. Args: (n list)
  2675. Returns the result of performing the CDR operation N times on LIST.")
  2676.  
  2677. (docfun null function "
  2678. Args: (x)
  2679. Returns T if X is NIL; NIL otherwise.")
  2680.  
  2681. (doctype number "
  2682. A number is either an integer, a ratio, a floating-point number, or a complex
  2683. number.  Integers and ratios are collectively called rationals.")
  2684.  
  2685. (docfun numberp function "
  2686. Args: (x)
  2687. Returns T if X is any kind of number; NIL otherwise.")
  2688.  
  2689. (docfun numerator function "
  2690. Args: (rational)
  2691. Returns as an integer the numerator of the given rational number.")
  2692.  
  2693. (docfun nunion function "
  2694. Args: (list1 list2 &key (test #'eql) test-not (key #'identity))
  2695. Returns the union of LIST1 and LIST2.  LIST1 and/or LIST2 may be destroyed.")
  2696.  
  2697. (docfun oddp function "
  2698. Args: (integer)
  2699. Returns T if INTEGER is odd; NIL otherwise.")
  2700.  
  2701. (docfun open function "
  2702. Args: (filename &key (direction :input) (element-type 'string-char)
  2703.                      (if-exists :error) (if-does-not-exist :error))
  2704. Opens the file specified by FILENAME, which may be a string, a pathname,
  2705. or a stream.  Returns a stream for the open file.
  2706. Possible DIRECTION values are :INPUT, :OUTPUT, :IO and :PROBE.
  2707. Possible ELEMENT-TYPE values are STRING-CHAR, (UNSIGNED-BYTE n),
  2708. UNSIGNED-BYTE, (SIGNED-BYTE n), SIGNED-BYTE, CHARACTER, BIT, (MOD n), and
  2709. :DEFAULT.
  2710. Possible IF-EXISTS values are :ERROR, :NEW-VERSION, :RENAME,
  2711. :RENAME-AND-DELETE, :OVERWRITE, :APPEND, :SUPERSEDE, and NIL.
  2712. Possible IF-DOES-NOT-EXIST values are :ERROR, :CREATE, and NIL.")
  2713.  
  2714. (docfun or macro "
  2715. Syntax: (or {form}*)
  2716. Evaluates FORMs in order from left to right.  If any FORM evaluates to
  2717. non-NIL, quits and returns that (single) value.  If the last FORM is reached,
  2718. returns whatever values it returns.")
  2719.  
  2720. (docfun output-stream-p function "
  2721. Args: (stream)
  2722. Returns non-nil if STREAM can handle output operations; NIL otherwise.")
  2723.  
  2724. (doctype package "
  2725. Packages are collections of symbols that serve as name spaces.
  2726. A package is denoted as #<? package> where '?' is actually the name of the
  2727. package.
  2728. KCL provides five built-in packages:
  2729.     lisp     symbols that names Common Lisp functions and variables.
  2730.     user     the standard package used by the user.
  2731.     keyword     the keyword package.
  2732.     system     symbols that names internal functions and variables.
  2733.          Has nicknames SYS and SI.
  2734.     compiler symbols that names functions and variables internally used
  2735.          by the KCL compiler.")
  2736.  
  2737. (docvar *package* variable "
  2738. The current package.")
  2739.  
  2740. (docfun package-name function "
  2741. Args: (package)
  2742. Returns the string that names the specified PACKAGE.")
  2743.  
  2744. (docfun package-nicknames function "
  2745. Args: (package)
  2746. Returns as a list the nickname strings for the specified PACKAGE.")
  2747.  
  2748. (docfun package-shadowing-symbols function "
  2749. Args: (package)
  2750. Returns the list of symbols that have been declared as shadowing symbols
  2751. in PACKAGE.")
  2752.  
  2753. (docfun package-use-list function "
  2754. Args: (package)
  2755. Returns the list of packages used by PACKAGE.")
  2756.  
  2757. (docfun package-used-by-list function "
  2758. Args: (package)
  2759. Returns the list of packages that use PACKAGE.")
  2760.  
  2761. (docfun packagep function "
  2762. Args: (x)
  2763. Returns T if X is a package; NIL otherwise.")
  2764.  
  2765. (docfun pairlis function "
  2766. Args: (keys data &optional (alist nil))
  2767. Constructs an association list from KEYS and DATA adding to ALIST.")
  2768.  
  2769. (docfun parse-integer function "
  2770. Args: (string
  2771.        &key (start 0) (end (length string)) (radix 10) (junk-allowed nil))
  2772. Parses STRING for an integer and returns it.")
  2773.  
  2774. (docfun parse-namestring function "
  2775. Args: (thing &optional host (defaults *default-pathname-defaults*)
  2776.              &key (start 0) (end (length thing)) (junk-allowed nil))
  2777. Parses a string representation of a pathname into a pathname.  HOST
  2778. is ignored.")
  2779.  
  2780. (doctype pathname "
  2781. Pathnames are the means by which a Lisp program can interface to an external
  2782. file system in a reasonably implementation-independent manner.
  2783. Among the six elements in a pathname described in Steele's manual,
  2784. HOST, DEVICE, and VERSION are meaningless in KCL, though they are harmless
  2785. at all.
  2786. A pathname is denoted as #\"???\" where '???' is actually some pathname
  2787. information.  This depends on the version of KCL.  Refer to the KCL report
  2788. at your hand for details.")
  2789.  
  2790. (docfun pathname function "
  2791. Args: (x)
  2792. Turns X into a pathname.  X may be a string, symbol, stream, or pathname.")
  2793.  
  2794. (docfun pathname-device function "
  2795. Args: (pathname)
  2796. Returns the device slot of PATHNAME.")
  2797.  
  2798. (docfun pathname-directory function "
  2799. Args: (pathname)
  2800. Returns the directory slot of PATHNAME.")
  2801.  
  2802. (docfun pathname-host function "
  2803. Args: (pathname)
  2804. Returns the host slot of PATHNAME.")
  2805.  
  2806. (docfun pathname-name function "
  2807. Args: (pathname)
  2808. Returns the name slot of PATHNAME.")
  2809.  
  2810. (docfun pathname-type function "
  2811. Args: (pathname)
  2812. Returns the type slot of PATHNAME.")
  2813.  
  2814. (docfun pathname-version function "
  2815. Args: (pathname)
  2816. Returns the version slot of PATHNAME.")
  2817.  
  2818. (docfun pathnamep function "
  2819. Args: (x)
  2820. Returns T if X is a pathname object; NIL otherwise.")
  2821.  
  2822. (docfun peek-char function "
  2823. Args: (&optional (peek-type nil) (stream *standard-input*) (eof-error-p t)
  2824.                  (eof-value nil) (recursive-p nil))
  2825. Peeks at the next character in the input stream STREAM.")
  2826.  
  2827. (docfun phase function "
  2828. Args: (number)
  2829. Returns the angle part of the polar representation of a complex number.
  2830. For non-complex numbers, this is 0.")
  2831.  
  2832. (docvar pi constant "
  2833. The floating-point number that is appropriately equal to the ratio of the
  2834. circumference of the circle to the diameter.")
  2835.  
  2836. (docfun plusp function "
  2837. Args: (number)
  2838. Returns T if NUMBER > 0; NIL otherwise.")
  2839.  
  2840. (docfun pop macro "
  2841. Syntax: (pop place)
  2842. Pops one item off the front of the list in PLACE and returns it.")
  2843.  
  2844. (docfun position function "
  2845. Args: (item sequence
  2846.        &key (from-end nil) (test #'eql) test-not (start 0)
  2847.             (end (length sequence)) (key #'identity))
  2848. Returns the index of the first element in SEQUENCE that satisfies TEST with
  2849. ITEM; NIL if no such element exists.")
  2850.  
  2851. (docfun position-if function "
  2852. Args: (test sequence
  2853.        &key (from-end nil) (start 0) (end (length sequence)) (key #'identity))
  2854. Returns the index of the first element in SEQUENCE that satisfies TEST; NIL
  2855. if no such element exists.")
  2856.  
  2857. (docfun position-if-not function "
  2858. Args: (test sequence
  2859.        &key (from-end nil) (start 0) (end (length sequence)) (key #'identity))
  2860. Returns the index of the first element in SEQUENCE that does not satisfy TEST;
  2861. NIL if no such element exists.")
  2862.  
  2863. (docfun pprint function "
  2864. Args: (object &optional (stream *standard-output*))
  2865. Pretty-prints OBJECT.  Returns OBJECT.  Equivalent to
  2866.     (WRITE :STREAM STREAM :PRETTY T)
  2867. The SI:PRETTY-PRINT-FORMAT property N (which must be a non-negative integer)
  2868. of a symbol SYMBOL controls the pretty-printing of form
  2869.     (SYMBOL f1 ... fN fN+1 ... fM)
  2870. in such a way that the subforms fN+1, ..., fM are regarded as the 'body' of
  2871. the entire form.  For instance, the property value of 2 is initially given
  2872. to the symbol DO.")
  2873.  
  2874. (docfun prin1 function "
  2875. Args: (object &optional (stream *standard-output*))
  2876. Prints OBJECT in the mostly readable representation.  Returns OBJECT.
  2877. Equivalent to (WRITE OBJECT :STREAM STREAM :ESCAPE T).")
  2878.  
  2879. (docfun prin1-to-string function "
  2880. Args: (object)
  2881. Returns as a string the printed representation of OBJECT in the mostly
  2882. readable representation.
  2883. Equivalent to (WRITE-TO-STRING OBJECT :ESCAPE T).")
  2884.  
  2885. (docfun princ function "
  2886. Args: (object &optional (stream *standard-output*))
  2887. Prints OBJECT without escape characters.  Returns OBJECT.  Equivalent to
  2888.     (WRITE OBJECT :STREAM STREAM :ESCAPE NIL).")
  2889.  
  2890. (docfun princ-to-string function "
  2891. Args: (object)
  2892. Returns as a string the printed representation of OBJECT without escape
  2893. characters.  Equivalent to
  2894.     (WRITE-TO-STRING OBJECT :ESCAPE NIL).")
  2895.  
  2896. (docfun print function "
  2897. Args: (object &optional (stream *standard-output*))
  2898. Outputs a newline character, and then prints OBJECT in the mostly readable
  2899. representation.  Returns OBJECT.  Equivalent to
  2900.     (PROGN (TERPRI STREAM) (WRITE OBJECT :STREAM STREAM :ESCAPE T)).")
  2901.  
  2902. (docvar *print-array* variable "
  2903. Whether the KCL printer should print array elements.")
  2904.  
  2905. (docvar *print-base* variable "
  2906. The radix in which the KCL printer prints integers and rationals.
  2907. The value must be an integer from 2 to 36, inclusive.")
  2908.  
  2909. (docvar *print-case* variable "
  2910. The case in which the KCL printer should print ordinary symbols.
  2911. The value must be one of the keywords :UPCASE, :DOWNCASE, and :CAPITALIZE.")
  2912.  
  2913. (docvar *print-circle* variable "
  2914. Whether the KCL printer should take care of circular lists.")
  2915.  
  2916. (docvar *print-escape* variable "
  2917. Whether the KCL printer should put escape characters whenever appropriate.")
  2918.  
  2919. (docvar *print-gensym* variable "
  2920. Whether the KCL printer should prefix symbols with no home package
  2921. with \"#:\".")
  2922.  
  2923. (docvar *print-length* variable "
  2924. How many elements the KCL printer should print at each level of nested data
  2925. object.  Unlimited if NIL.")
  2926.  
  2927. (docvar *print-level* variable "
  2928. How many levels deep the KCL printer should print.  Unlimited if NIL.")
  2929.  
  2930. (docvar *print-pretty* variable "
  2931. Whether the KCL printer should pretty-print.  See the function doc of PPRINT
  2932. for more information about pretty-printing.")
  2933.  
  2934. (docvar *print-radix* variable "
  2935. Whether the KCL printer should print the radix indicator when printing
  2936. integers and rationals.")
  2937.  
  2938. (docfun probe-file function "
  2939. Args: (file)
  2940. Returns the truename of file if the file exists.
  2941. Returns NIL otherwise.")
  2942.  
  2943. #+aosvs
  2944. (docfun process function "
  2945. Args: (progname &optional (ipc-message \"\")
  2946.        &key block console debug dir input output username list data ioc)
  2947. KCL specific: Creates a process.  Only KCL/AOS supports this function.")
  2948.  
  2949. (docfun proclaim function "
  2950. Args: (decl-spec)
  2951. Puts the declaration given by DECL-SPEC into effect globally.  See the doc of
  2952. DECLARE for possible DECL-SPECs.")
  2953.  
  2954. (docfun proclamation function "
  2955. Args: (decl-spec)
  2956. KCL specific: Returns T if the specified declaration is globally in effect;
  2957. NIL otherwise.  See the doc of DECLARE for possible DECL-SPECs.")
  2958.  
  2959. (docfun prog macro "
  2960. Syntax: (prog ({var | (var [init])}*) {decl}* {tag | statement}*)
  2961. Creates a NIL block, binds VARs in parallel, and then executes STATEMENTs.")
  2962.  
  2963. (docfun prog* macro "
  2964. Syntax: (prog* ({var | (var [init])}*) {decl}* {tag | statement}*)
  2965. Creates a NIL block, binds VARs sequentially, and then executes STATEMENTs.")
  2966.  
  2967. (docfun prog1 macro "
  2968. Syntax: (prog1 first {form}*)
  2969. Evaluates FIRST and FORMs in order, and returns the (single) value of FIRST.")
  2970.  
  2971. (docfun prog2 macro "
  2972. Syntax: (prog2 first second {forms}*)
  2973. Evaluates FIRST, SECOND, and FORMs in order, and returns the (single) value
  2974. of SECOND.")
  2975.  
  2976. (docfun progn special "
  2977. Syntax: (progn {form}*)
  2978. Evaluates FORMs in order, and returns whatever the last FORM returns.")
  2979.  
  2980. (docfun progv special "
  2981. Syntax: (progv symbols values {form}*)
  2982. SYMBOLS must evaluate to a list of variables.  VALUES must evaluate to a list
  2983. of initial values.  Evaluates FORMs as a PROGN, with each variable bound (as
  2984. special) to the corresponding value.")
  2985.  
  2986. (docfun provide function "
  2987. Args: (module-name)
  2988. Adds the specified module to the list of modules maintained in *MODULES*.")
  2989.  
  2990. (docfun psetf macro "
  2991. Syntax: (psetf {place newvalue}*)
  2992. Similar to SETF, but evaluates all NEWVALUEs first, and then replaces the
  2993. value in each PLACE with the value of the corresponding NEWVALUE.  Returns
  2994. NIL always.")
  2995.  
  2996. (docfun psetq macro "
  2997. Syntax: (psetq {var form}*)
  2998. Similar to SETQ, but evaluates all FORMs first, and then assigns each value to
  2999. the corresponding VAR.  Returns NIL always.")
  3000.  
  3001. (docfun push macro "
  3002. Syntax: (push item place)
  3003. Conses ITEM onto the list in PLACE, and returns the new list.")
  3004.  
  3005. (docfun pushnew macro "
  3006. Syntax: (pushnew item place {keyword value}*)
  3007. If ITEM is already in the list stored in PLACE, does nothing.  Else, conses
  3008. ITEM onto the list.  Returns NIL.  If no KEYWORDs are supplied, each element
  3009. in the list is compared with ITEM by EQL, but the comparison can be controlled
  3010. by supplying keywords :TEST, :TEST-NOT, and/or :KEY.")
  3011.  
  3012. (docvar *query-io* variable "
  3013. The query I/O stream.")
  3014.  
  3015. (docfun quote special "
  3016. Syntax: (quote x) or 'x
  3017. Simply returns X without evaluating it.")
  3018.  
  3019. (docfun random function "
  3020. Args: (number &optional (state *random-state*))
  3021. Generates a uniformly distributed pseudo-random number between zero
  3022. (inclusive) and NUMBER (exclusive), by using the random state object STATE.")
  3023.  
  3024. (doctype random-state "
  3025. A random state is used to encapsulate state information used by the
  3026. pseudo-random number generator.
  3027. A random state is denoted by prefixing a number with '#$'.")
  3028.  
  3029. (docvar *random-state* variable "
  3030. The default random-state object used by RAMDOM.")
  3031.  
  3032. (docfun random-state-p function "
  3033. Args: (x)
  3034. Returns T if X is a random-state object; NIL otherwise.")
  3035.  
  3036. (docfun rassoc function "
  3037. Args: (item alist &key (test #'eql) test-not (key #'identity))
  3038. Returns the first cons in ALIST whose cdr is equal to ITEM.")
  3039.  
  3040. (docfun rassoc-if function "
  3041. Args: (predicate alist)
  3042. Returns the first cons in ALIST whose cdr satisfies PREDICATE.")
  3043.  
  3044. (docfun rassoc-if-not function "
  3045. Args: (predicate alist)
  3046. Returns the first cons in ALIST whose cdr does not satisfy PREDICATE.")
  3047.  
  3048. (doctype ratio "
  3049. A ratio represents a mathematical ratio of two integers.  A ratio is
  3050. denoted by its numerator and denominator, separated by a slash '/'.  More
  3051. precisely, the following syntax is normally used.
  3052.     { [sign]{digit-in-default-radix}+ / {digit-in-default-radix}+
  3053.       | {#b | #B} [sign] {radix-2-digit}+ / {radix-2-digit}+
  3054.       | {#o | #O} [sign] {radix-8-digit}+ / {radix-8-digit}+
  3055.       | {#x | #X} [sign] {radix-16-digit}+ / {radix-16-digit}+
  3056.       | {#2r | #2R} [sign] {radix-2-digit}+ / {radix-2-digit}+
  3057.       ....
  3058.       | {#36r | #36R} [sign] {radix-36-digit}+ / {radix-36-digit}+  }
  3059. See the type doc of INTEGER for the syntactic variables used here.")
  3060.  
  3061. (docfun rational function "
  3062. Args: (number)
  3063. Converts NUMBER into rational accurately and returns it.")
  3064.  
  3065. (docfun rationalize function "
  3066. Args: (number)
  3067. Converts NUMBER into rational approximately and returns it.")
  3068.  
  3069. (docfun rationalp function "
  3070. Args: (x)
  3071. Returns T if X is an integer or a ratio; NIL otherwise.")
  3072.  
  3073. (docfun read function "
  3074. Args: (&optional (stream *standard-input*) (eof-error-p t) (eof-value nil)
  3075.                  (recursivep nil))
  3076. Reads in the next object from STREAM.")
  3077.  
  3078. (docvar *read-base* variable "
  3079. The radix that the KCL reader reads numbers in.")
  3080.  
  3081. (docfun read-byte function "
  3082. Args: (stream &optional (eof-error-p t) (eof-value nil))
  3083. Reads the next byte from STREAM.")
  3084.  
  3085. (docfun read-char function "
  3086. Args: (&optional (stream *standard-input*) (eof-error-p t)
  3087.                  (eof-value nil) (recursive-p nil))
  3088. Reads a character from STREAM.")
  3089.  
  3090. (docfun read-char-no-hang function "
  3091. Args: (&optional (stream *standard-input*) (eof-error-p t)
  3092.                  (eof-value nil) (recursive-p nil))
  3093. Returns the next character from STREAM if one is available; NIL otherwise.")
  3094.  
  3095. (docvar *read-default-float-format* variable "
  3096. The floating-point format the KCL reader uses when reading floating-point
  3097. numbers that have no exponent marker or have e or E for an exponent marker.
  3098. Must be one of SHORT-FLOAT, SINGLE-FLOAT, DOUBLE-FLOAT, and LONG-FLOAT.")
  3099.  
  3100. (docfun read-delimited-list function "
  3101. Args: (char &optional (stream *standard-input*) (recursive-p nil))
  3102. Reads objects from STREAM until the next character after an object's
  3103. representation is CHAR.  Returns a list of the objects read.")
  3104.  
  3105. (docfun read-from-string function "
  3106. Args: (string &optional (eof-error-p t) (eof-value nil)
  3107.               &key (start 0) (end (length string)) (preserve-whitespace nil))
  3108. Reads an object from STRING.")
  3109.  
  3110. (docfun read-line function "
  3111. Args: (&optional (stream *standard-input*) (eof-error-p t)
  3112.                  (eof-value nil) (recursive-p nil))
  3113. Returns a line of text read from STREAM as a string, discarding the newline
  3114. character.")
  3115.  
  3116. (docfun read-preserving-whitespace function "
  3117. Args: (&optional (stream *standard-input*) (eof-error-p t) (eof-value nil)
  3118.                  (recursive-p nil))
  3119. Reads an object from STREAM, preserving the whitespace that followed the
  3120. object.")
  3121.  
  3122. (docvar *read-suppress* variable "
  3123. When the value of this variable is NIL, the KCL reader operates normally.
  3124. When it is non-NIL, then the reader parses input characters but much of what
  3125. is read is not interpreted.")
  3126.  
  3127. (doctype readtable "
  3128. A readtable is a data structure that maps characters into syntax types for the
  3129. KCL parser.
  3130. A readtable is denoted as #<a readtable>.")
  3131.  
  3132. (docvar *readtable* variable "
  3133. The current readtable.")
  3134.  
  3135. (docfun readtablep function "
  3136. Args: (x)
  3137. Returns T if X is a readtable object; NIL otherwise.")
  3138.  
  3139. (docfun realpart function "
  3140. Args: (number)
  3141. Extracts the real part of NUMBER.")
  3142.  
  3143. (docfun reduce function "
  3144. Args: (function sequence
  3145.        &key (from-end nil) (start 0) (end (length sequence)) initial-value)
  3146. Combines all the elements of SEQUENCE using a binary operation FUNCTION.
  3147. If INITIAL-VALUE is supplied, it is logically placed before the SEQUENCE.")
  3148.  
  3149. (docfun rem function "
  3150. Args: (number divisor)
  3151. Returns the second value of (TRUNCATE NUMBER DIVISOR).")
  3152.  
  3153. (docfun remf macro "
  3154. Syntax: (remf place indicator)
  3155. PLACE may be any place expression acceptable to SETF, and is expected
  3156. to hold a property list or NIL.  This list is destructively altered to
  3157. remove the property specified by INDICATOR.  Returns T if such a
  3158. property was present; NIL otherwise.")
  3159.  
  3160. (docfun remhash function "
  3161. Args: (key hash-table)
  3162. Removes any entry for KEY in HASH-TABLE.  Returns T if such an entry
  3163. existed; NIL otherwise.")
  3164.  
  3165. (docfun remove function "
  3166. Args: (item sequence
  3167.        &key (from-end nil) (test #'eql) test-not (start 0)
  3168.             (end (length sequence)) (count most-positive-fixnum)
  3169.             (key #'identity))
  3170. Returns a copy of SEQUENCE with ITEM removed.")
  3171.  
  3172. (docfun remove-duplicates function "
  3173. Args: (sequence
  3174.        &key (from-end nil) (test #'eql) test-not (start 0)
  3175.             (end (length sequence)) (key #'identity))
  3176. The elements of SEQUENCE are examined, and if any two match, one is discarded.
  3177. Returns the resulting sequence.")
  3178.  
  3179. (docfun remove-if function "
  3180. Args: (test sequence
  3181.        &key (from-end nil) (start 0) (end (length sequence))
  3182.             (count most-positive-fixnum) (key #'identity))
  3183. Returns a copy of SEQUENCE with elements satisfying TEST removed.")
  3184.  
  3185. (docfun remove-if-not function "
  3186. Args: (test sequence
  3187.        &key (from-end nil) (start 0) (end (length sequence))
  3188.             (count most-positive-fixnum) (key #'identity))
  3189. Returns a copy of SEQUENCE with elements not satisfying TEST removed.")
  3190.  
  3191. (docfun remprop function "
  3192. Args: (symbol indicator)
  3193. Look on property list of SYMBOL for property with specified
  3194. INDICATOR.  If found, splice this indicator and its value out of
  3195. the plist, and return the tail of the original list starting with
  3196. INDICATOR.  If not found, returns NIL with no side effects.")
  3197.  
  3198. (docfun rename-file function "
  3199. Args: (file new-name)
  3200. Renames the file FILE to NEW-NAME.  FILE may be a string, a pathname, or
  3201. a stream.")
  3202.  
  3203. (docfun rename-package function "
  3204. Args: (package new-name &optional (new-nicknames nil))
  3205. Replaces the old name and nicknames of PACKAGE with NEW-NAME and
  3206. NEW-NICKNAMES.")
  3207.  
  3208. (docfun replace function "
  3209. Args: (sequence1 sequence2
  3210.        &key (start1 0) (end1 (length sequence1))
  3211.             (start2 0) (end2 (length sequence2)))
  3212. Destructively modifies SEQUENCE1 by copying successive elements into it from
  3213. SEQUENCE2.")
  3214.  
  3215. (docfun require function "
  3216. Args: (module-name &optional (pathname))
  3217. If the specified module is not present, then loads the appropriate file(s).
  3218. PATHNAME may be a single pathname or it may be a list of pathnames.")
  3219.  
  3220. (docfun rest function "
  3221. Args: (x)
  3222. Equivalent to (CDR X).")
  3223.  
  3224. (docfun return macro "
  3225. Syntax: (return [result])
  3226. Returns from the lexically surrounding NIL block.  The value of RESULT,
  3227. which defaults to NIL, is returned as the value of the block.")
  3228.  
  3229. (docfun return-from special "
  3230. Syntax: (return-from name [result])
  3231. Returns from the lexically surrounding block whose name is NAME.  The value
  3232. of RESULT, which defaults to NIL, is returned as the value of the block.")
  3233.  
  3234. (docfun revappend function "
  3235. Args: (x y)
  3236. Equivalent to (APPEND (REVERSE X) Y)")
  3237.  
  3238. (docfun reverse function "
  3239. Args: (sequence)
  3240. Returns a new sequence containing the same elements as SEQUENCE but in
  3241. reverse order.")
  3242.  
  3243. (docfun room function "
  3244. Args: (&optional (x t))
  3245. Displays information about storage allocation in the following format.
  3246.  
  3247. * for each type class
  3248.     * the number of pages so-far allocated for the type class
  3249.     * the maximum number of pages for the type class
  3250.     * the percentage of used cells to cells so-far allocated
  3251.     * the number of times the garbage collector has been called to
  3252.       collect cells of the type class
  3253.     * the implementation types that belongs to the type class
  3254. * the number of pages actually allocated for contiguous blocks
  3255. * the maximum number of pages for contiguous blocks
  3256. * the number of times the garbage collector has been called to collect
  3257.   contiguous blocks
  3258. * the number of pages in the hole
  3259. * the maximum number of pages for relocatable blocks
  3260. * the number of times the garbage collector has been called to collect
  3261.   relocatable blocks
  3262. * the total number of pages allocated for cells
  3263. * the total number of pages allocated
  3264. * the number of available pages
  3265. * the number of pages KCL can use.
  3266.  
  3267. The number of times the garbage collector has been called is not shown,
  3268. if the number is zero.  The optional X is ignored.")
  3269.  
  3270. (docfun rotatef macro "
  3271. Syntax: (rotatef {place}*)
  3272. Evaluates PLACEs in turn, then assigns to each PLACE the value of the form to
  3273. its right.  The rightmost PLACE gets the value of the leftmost PLACE.
  3274. Returns NIL always.")
  3275.  
  3276. (docfun round function "
  3277. Args: (number &optional (divisor 1))
  3278. Rounds NUMBER/DIVISOR to nearest integer.  The second returned value is the
  3279. remainder.")
  3280.  
  3281. (docfun rplaca function "
  3282. Args: (x y)
  3283. Replaces the car of X with Y, and returns the modified X.")
  3284.  
  3285. (docfun rplacd function "
  3286. Args: (x y)
  3287. Replaces the cdr of X with Y, and returns the modified X.")
  3288.  
  3289. (docfun save function "
  3290. Args: (pathname)
  3291. KCL specific: Saves the current KCL core image into a program file specified
  3292. by PATHNAME.  This function depends on the version of KCL.  See KCL Report for
  3293. the details.")
  3294.  
  3295. (docfun sbit function "
  3296. Args: (simple-bit-array &rest subscripts)
  3297. Returns the bit from SIMPLE-BIT-ARRAY at SUBSCRIPTS.")
  3298.  
  3299. (docfun scale-float function "
  3300. Args: (float integer)
  3301. Returns (* FLOAT (expt (float-radix FLOAT) INTEGER)).")
  3302.  
  3303. (docfun schar function "
  3304. Args: (simple-string index)
  3305. Returns the character object representing the INDEX-th character in STRING.
  3306. This is faster than CHAR.")
  3307.  
  3308. (docfun search function "
  3309. Args: (sequence1 sequence2
  3310.        &key (from-end nil) (test #'eql) test-not (start1 0) (start2 0)
  3311.             (end1 (length sequence1)) (end2 (length sequence2))
  3312.             (key #'identity))
  3313. A search is conducted for the first subsequence of SEQUENCE2 which
  3314. element-wise matches SEQUENCE1.  If there is such a subsequence in SEQUENCE2,
  3315. the index of the its leftmost element is returned; otherwise, NIL is
  3316. returned.")
  3317.  
  3318. (docfun second function "
  3319. Args: (x)
  3320. Equivalent to (CADR X).")
  3321.  
  3322. (doctype sequence "
  3323. A sequence is either a list or a vector.")
  3324.  
  3325. (docfun set function "
  3326. Args: (symbol value)
  3327. Assigns the value of VALUE to the dynamic variable named by SYMBOL, and
  3328. returns the value assigned.")
  3329.  
  3330. (docfun set-char-bit function "
  3331. Args: (char name newvalue)
  3332. Returns a character just like CHAR except that the named bit is set or
  3333. cleared, according to whether NEWVALUE is non-NIL or NIL.  This function
  3334. is useless in KCL.")
  3335.  
  3336. (docfun set-difference function "
  3337. Args: (list1 list2 &key (test #'eql) test-not (key #'identity))
  3338. Returns a list of elements of LIST1 that do not appear in LIST2.")
  3339.  
  3340. (docfun set-dispatch-macro-character function "
  3341. Args: (disp-char sub-char function &optional (readtable *readtable*))
  3342. Causes FUNCTION to be called when the DISP-CHAR followed by SUB-CHAR is
  3343. read.")
  3344.  
  3345. (docfun set-exclusive-or function "
  3346. Args: (list1 list2 &key (test #'eql) test-not (key #'identity))
  3347. Returns a list of elements appearing exactly once in LIST1 and LIST2.")
  3348.  
  3349. (docfun set-macro-character function "
  3350. Args: (char function
  3351.        &optional (non-terminating-p nil) (readtable *readtable*))
  3352. Causes CHAR to be a macro character that, when seen by READ, causes FUNCTION
  3353. to be called.")
  3354.  
  3355. (docfun set-syntax-from-char function "
  3356. Args: (to-char from-char
  3357.        &optional (to-readtable *readtable*) (from-readtable nil))
  3358. Makes the syntax of TO-CHAR in TO-READTABLE be the same as the syntax of
  3359. FROM-CHAR in FROM-READTABLE.")
  3360.  
  3361. (docfun setf macro "
  3362. Syntax: (setf {place newvalue}*)
  3363. Replaces the value in PLACE with the value of NEWVALUE, from left to right.
  3364. Returns the value of the last NEWVALUE.  Each PLACE may be any one of the
  3365. following:
  3366.   * A symbol that names a variable.
  3367.   * A function call form whose first element is the name of the following
  3368.     functions:
  3369.     nth    elt    subseq    rest    first ... tenth
  3370.     c?r    c??r    c???r    c????r
  3371.     aref    svref    char    schar    bit    sbit    fill-poiter
  3372.     get    getf    documentation    symbol-value    symbol-function
  3373.     symbol-plist    macro-function    gethash
  3374.     char-bit    ldb    mask-field
  3375.     apply
  3376.     where '?' stands for either 'a' or 'd'.
  3377.   * the form (THE type place) with PLACE being a place recognized by SETF.
  3378.   * a macro call which expands to a place recognized by SETF.
  3379.   * any form for which a DEFSETF or DEFINE-SETF-METHOD declaration has been
  3380.     made.")
  3381.  
  3382. (docfun setq special "
  3383. Syntax: (setq {var form}*)
  3384. VARs are not evaluated and must be symbols.  Assigns the value of the first
  3385. FORM to the first VAR, then assigns the value of the second FORM to the second
  3386. VAR, and so on.  Returns the last value assigned.")
  3387.  
  3388. (docfun seventh function "
  3389. Args: (x)
  3390. Equivalent to (CADDR (CDDDDR X)).")
  3391.  
  3392. (docfun shadow function "
  3393. Args: (symbols &optional (package *package*))
  3394. Creates an internal symbol in PACKAGE with the same name as each of the
  3395. specified SYMBOLS.  SYMBOLS must be a list of symbols or a symbol.")
  3396.  
  3397. (docfun shadowing-import function "
  3398. Args: (symbols &optional (package *package*))
  3399. Imports SYMBOLS into PACKAGE, disregarding any name conflict.  If a symbol
  3400. of the same name is already present, then it is uninterned.  SYMBOLS must
  3401. be a list of symbols or a symbol.")
  3402.  
  3403. (docfun shiftf macro "
  3404. Syntax: (shiftf {place}+ newvalue)
  3405. Evaluates all PLACEs and NEWVALUE in turn, then assigns the value of each
  3406. form to the PLACE on its left.  Returns the original value of the leftmost
  3407. form.")
  3408.  
  3409. (docvar short-float-epsilon constant "
  3410. The smallest positive short-float that satisfies
  3411.     (not (= (float 1 e) (+ (float 1 e) e))).")
  3412.  
  3413. (docvar short-float-negative-epsilon constant "
  3414. The smallest positive short-float that satisfies
  3415.     (not (= (float 1 e) (- (float 1 e) e))).")
  3416.  
  3417. (docfun short-site-name function "
  3418. Args: ()
  3419. Returns a string that identifies the physical location of the current KCL.")
  3420.  
  3421. (docfun signum function "
  3422. Args: (number)
  3423. If NUMBER is zero, returns NUMBER; else returns (/ NUMBER (ABS NUMBER)).")
  3424.  
  3425. (doctype simple-array "
  3426. A simple-array is an array that is not displaced to another array, has no
  3427. fill pointer, and is not to have its size adjusted.")
  3428.  
  3429. (doctype simple-bit-vector "
  3430. A simple-bit-vector is a bit-vector that is not displaced to another
  3431. bit-vector, has no fill pointer, and is not to have its size adjusted.")
  3432.  
  3433. (docfun simple-bit-vector-p function "
  3434. Args: (x)
  3435. Returns T if X is a simple bit-vector; NIL otherwise.")
  3436.  
  3437. (doctype simple-string "
  3438. A simple-string is a string that is not displaced to another string, has no
  3439. fill pointer, and is not to have its size adjusted.")
  3440.  
  3441. (docfun simple-string-p function "
  3442. Args: (x)
  3443. Returns T if X is a simple string; NIL otherwise.")
  3444.  
  3445. (doctype simple-vector "
  3446. A simple-vector is a vector that is not displaced to another vector, has no
  3447. fill pointer, and is not to have its size adjusted.")
  3448.  
  3449. (docfun simple-vector-p function "
  3450. Args: (x)
  3451. Returns T if X is a simple vector; NIL otherwise.")
  3452.  
  3453. (docfun sin function "
  3454. Args: (radians)
  3455. Returns the sine of RADIANS.")
  3456.  
  3457. (docvar single-float-epsilon constant "
  3458. Same as LONG-FLOAT-EPSILON.")
  3459.  
  3460. (docvar single-float-negative-epsilon constant "
  3461. Same as LONG-FLOAT-NEGATIVE-EPSILON.")
  3462.  
  3463. (docfun sinh function "
  3464. Args: (number)
  3465. Returns the hyperbolic sine of NUMBER.")
  3466.  
  3467. (docfun sixth function "
  3468. Args: (x)
  3469. Equivalent to (CADR (CDDDDR X)).")
  3470.  
  3471. (docfun sleep function "
  3472. Args: (n)
  3473. This function causes execution to be suspended for N seconds.  N may
  3474. be any non-negative, non-complex number.")
  3475.  
  3476. (docfun software-type function "
  3477. Args: ()
  3478. Returns a string that identifies the software type of the software
  3479. under which KCL is currently running.")
  3480.  
  3481. (docfun software-version function "
  3482. Args: ()
  3483. Returns a string that identifies the software version of the software
  3484. under which KCL is currently running.")
  3485.  
  3486. (docfun some function "
  3487. Args: (predicate sequence &rest more-sequences)
  3488. Returns T if at least one of the elements in SEQUENCEs satisfies PREDICATE;
  3489. NIL otherwise.")
  3490.  
  3491. (docfun sort function "
  3492. Args: (sequence predicate &key (key #'identity))
  3493. Destructively sorts SEQUENCE.  PREDICATE should return non-NIL if its first
  3494. argument is to precede its second argument.")
  3495.  
  3496. (docfun special-form-p function "
  3497. Args: (symbol)
  3498. Returns T if SYMBOL globally names a special form; NIL otherwise.
  3499. The special forms defined in Steele's manual are:
  3500.  
  3501.     block        if            progv
  3502.     catch        labels            quote
  3503.     compiler-let    let            return-from
  3504.     declare        let*            setq
  3505.     eval-when    macrolet        tagbody
  3506.     flet        multiple-value-call    the
  3507.     function    multiple-value-prog1    throw
  3508.     go        progn            unwind-protect
  3509.  
  3510. In addition, KCL implements the following macros as special forms, though
  3511. of course macro-expanding functions such as MACROEXPAND work correctly for
  3512. these macros.
  3513.  
  3514.     and        incf            prog1
  3515.     case        locally            prog2
  3516.     cond        loop            psetq
  3517.     decf        multiple-value-bind    push
  3518.     defmacro    multiple-value-list    return
  3519.     defun        multiple-value-set    setf
  3520.     do        or            unless
  3521.     do*        pop            when
  3522.     dolist        prog
  3523.     dotimes        prog* ")
  3524.  
  3525. (docfun sqrt function "
  3526. Args: (number)
  3527. Returns the principal square root of NUMBER.")
  3528.  
  3529. (docfun stable-sort function "
  3530. Args: (sequence predicate &key (key #'identity))
  3531. Destructively sorts SEQUENCE.  PREDICATE should return non-NIL if its first
  3532. argument is to precede its second argument.")
  3533.  
  3534. (doctype standard-char "
  3535. A standard-char is a space character (#\\Space), a newline character
  3536. (#\\Newline,) or a character that represents one of the following letters.
  3537.  
  3538.     !  \"  #  $  %  &  '  (  )  *  +  ,  -  .  /  0  1  2  3  4
  3539.     5  6  7  8  9  :  ;  <  =  >  ?  @  A  B  C  D  E  F  G  H
  3540.     I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z  [  \\
  3541.     ]  ^  _  `  a  b  c  d  e  f  g  h  i  j  k  l  m  n  o  p
  3542.     q  r  s  t  u  v  w  x  y  z  {  |  }  ~ ")
  3543.  
  3544. (docfun standard-char-p function "
  3545. Args: (char)
  3546. Returns T if CHAR is a standard character, i.e., one of the 95 ASCII printing
  3547. characters #\\Space to #\\~ and #\Newline; NIL otherwise.")
  3548.  
  3549. (docvar *standard-input* variable "
  3550. The default input stream used by the KCL reader.")
  3551.  
  3552. (docvar *standard-output* variable "
  3553. The default output stream used by the KCL printer.")
  3554.  
  3555. (docfun step macro "
  3556. Syntax: (step form)
  3557. Evaluates FORM in the single-step mode and returns the value.")
  3558.  
  3559. (doctype stream "
  3560. A stream is a source or sink of data, typically characters or bytes.
  3561. A stream is denoted in one of the following ways:
  3562.     #<input stream ??>        ?? being a file name
  3563.     #<output stream ??>        ?? being a file name
  3564.     #<string-input stream from ??>    ?? being a string
  3565.     #<a string-output stream>
  3566.     #<a two-way stream>
  3567.     #<an echo stream>
  3568.     #<synonym stream to ??>        ?? being a symbol
  3569.     #<a concatenated stream>
  3570.     #<a broadcast stream>")
  3571.  
  3572. (docfun stream-element-type function "
  3573. Args: (stream)
  3574. Returns a type specifier for the kind of object returned by STREAM.")
  3575.  
  3576. (docfun streamp function "
  3577. Args: (x)
  3578. Returns T if X is a stream object; NIL otherwise.")
  3579.  
  3580. (doctype string "
  3581. A string is a vector of characters.  A string is denoted by surrounding
  3582. the characters with double quotes '\"'.
  3583. Some strings may be displaced to another string, may have a fill pointer,
  3584. or may be adjusted its size.  Other strings are called simple strings.")
  3585.  
  3586. (docfun string function "
  3587. Args: (x)
  3588. Coerces X into a string.  If X is a string, then returns X itself.  If X is a
  3589. symbol, then returns X's print name.  If X is a character, then returns a one
  3590. element string containing that character.  Signals an error if X cannot be
  3591. coerced into a string.")
  3592.  
  3593. (docfun string-capitalize function "
  3594. Args: (string &key (start 0) (end (length string)))
  3595. Returns a copy of STRING with the first character of each word converted to
  3596. upper-case, and remaining characters in the word converted to lower case.")
  3597.  
  3598. (doctype string-char "
  3599. A string-char is a character whose bits and font attributes are zero.
  3600. Any KCL character is a string-character.")
  3601.  
  3602. (docfun string-char-p function "
  3603. Args: (char)
  3604. Returns T if CHAR can be stored in a string.  In KCL, this function always
  3605. returns T since any character in KCL can be stored in a string.")
  3606.  
  3607. (docfun string-downcase function "
  3608. Args: (string &key (start 0) (end (length string)))
  3609. Returns a copy of STRING with all upper case characters converted to
  3610. lowercase.")
  3611.  
  3612. (docfun string-equal function "
  3613. Args: (string1 string2
  3614.        &key (start1 0) (end1 (length string1))
  3615.             (start2 0) (end2 (length string2)))
  3616. Given two strings (string1 and string2), and optional integers start1,
  3617. start2, end1 and end2, compares characters in string1 to characters in
  3618. string2 (using char-equal).")
  3619.  
  3620. (docfun string-greaterp function "
  3621. Args: (string1 string2
  3622.        &key (start1 0) (end1 (length string1))
  3623.             (start2 0) (end2 (length string2)))
  3624. Similar to STRING>, but ignores cases.")
  3625.  
  3626. (docfun string-left-trim function "
  3627. Args: (char-bag string)
  3628. Returns a copy of STRING with the characters in CHAR-BAG removed from the
  3629. left end.")
  3630.  
  3631. (docfun string-lessp function "
  3632. Args: (string1 string2
  3633.        &key (start1 0) (end1 (length string1))
  3634.             (start2 0) (end2 (length string2)))
  3635. Similar to STRING<, but ignores cases.")
  3636.  
  3637. (docfun string-not-equal function "
  3638. Args: (string1 string2
  3639.        &key (start1 0) (end1 (length string1))
  3640.             (start2 0) (end2 (length string2)))
  3641. Similar to STRING\=, but ignores cases.")
  3642.  
  3643. (docfun string-not-greaterp function "
  3644. Args: (string1 string2
  3645.        &key (start1 0) (end1 (length string1))
  3646.             (start2 0) (end2 (length string2)))
  3647. Similar to STRING<=, but ignores cases.")
  3648.  
  3649. (docfun string-not-lessp function "
  3650. Args: (string1 string2
  3651.        &key (start1 0) (end1 (length string1))
  3652.             (start2 0) (end2 (length string2)))
  3653. Similar to STRING>=, but ignores cases.")
  3654.  
  3655. (docfun string-right-trim function "
  3656. Args: (char-bag string)
  3657. Returns a copy of STRING with the characters in CHAR-BAG removed from the
  3658. right end.")
  3659.  
  3660. (docfun string-trim function "
  3661. Args: (char-bag string)
  3662. Returns a copy of STRING with the characters in CHAR-BAG removed from both
  3663. ends.")
  3664.  
  3665. (docfun string-upcase function "
  3666. Args: (string &key (start 0) (end (length string)))
  3667. Returns a copy of STRING with all lower case characters converted to
  3668. uppercase.")
  3669.  
  3670. (docfun string/= function "
  3671. Args: (string1 string2
  3672.        &key (start1 0) (end1 (length string1))
  3673.             (start2 0) (end2 (length string2)))
  3674. Returns NIL if STRING1 and STRING2 are character-wise CHAR=.  Otherwise,
  3675. returns the index to the longest common prefix of the strings.")
  3676.  
  3677. (docfun string< function "
  3678. Args: (string1 string2
  3679.        &key (start1 0) (end1 (length string1))
  3680.             (start2 0) (end2 (length string2)))
  3681. If STRING1 is lexicographically less than STRING2, then returns the longest
  3682. common prefix of the strings.  Otherwise, returns NIL.")
  3683.  
  3684. (docfun string<= function "
  3685. Args: (string1 string2
  3686.        &key (start1 0) (end1 (length string1))
  3687.             (start2 0) (end2 (length string2)))
  3688. If STRING1 is lexicographically less than or equal to STRING2, then returns
  3689. the longest common prefix of the two strings.  Otherwise, returns NIL.")
  3690.  
  3691. (docfun string= function "
  3692. Args: (string1 string2
  3693.        &key (start1 0) (end1 (length string1))
  3694.             (start2 0) (end2 (length string2)))
  3695. Returns T if the two strings are character-wise CHAR=; NIL otherwise.")
  3696.  
  3697. (docfun string> function "
  3698. Args: (string1 string2
  3699.        &key (start1 0) (end1 (length string1))
  3700.             (start2 0) (end2 (length string2)))
  3701. If STRING1 is lexicographically greater than STRING2, then returns the
  3702. longest common prefix of the strings.  Otherwise, returns NIL.")
  3703.  
  3704. (docfun string>= function "
  3705. Args: (string1 string2
  3706.        &key (start1 0) (end1 (length string1))
  3707.             (start2 0) (end2 (length string2)))
  3708. If STRING1 is lexicographically greater than or equal to STRING2, then returns
  3709. the longest common prefix of the strings.  Otherwise, returns NIL.")
  3710.  
  3711. (docfun stringp function "
  3712. Args: (x)
  3713. Returns T if X is a string; NIL otherwise.")
  3714.  
  3715. (doctype structure "
  3716. Structures are instances of user-defined data types that have a fixed number
  3717. of named components.  In the simplest case, a structure is denoted as
  3718.     #s(structure-name slot-value1 ... slot-valuen)")
  3719.  
  3720. (docfun sublis function "
  3721. Args: (alist tree &key (test #'eql) test-not (key #'identity))
  3722. Substitutes from ALIST for subtrees of TREE nondestructively.")
  3723.  
  3724. (docfun subseq function "
  3725. Args: (sequence start &optional (end (length sequence)))
  3726. Returns a copy of a subsequence of SEQUENCE between START (inclusive) and
  3727. END (exclusive).")
  3728.  
  3729. (docfun subsetp function "
  3730. Args: (list1 list2 &key (test #'eql) test-not (key #'identity))
  3731. Returns T if every element of LIST1 appears in LIST2; NIL otherwise.")
  3732.  
  3733. (docfun subst function "
  3734. Args: (new old tree &key (test #'eql) test-not (key #'identity))
  3735. Substitutes NEW for subtrees of TREE that match OLD.")
  3736.  
  3737. (docfun subst-if function "
  3738. Args: (new test tree &key (key #'identity))
  3739. Substitutes NEW for subtrees of TREE that satisfy TEST.")
  3740.  
  3741. (docfun subst-if-not function "
  3742. Args: (new test tree &key (key #'identity))
  3743. Substitutes NEW for subtrees of TREE that do not satisfy TEST.")
  3744.  
  3745. (docfun substitute function "
  3746. Args: (newitem olditem sequence
  3747.        &key (from-end nil) (test #'eql) test-not (start 0)
  3748.             (end (length sequence)) (count most-positive-fixnum)
  3749.             (key #'identity))
  3750. Returns a sequence of the same kind as SEQUENCE with the same elements
  3751. except that OLDITEMs are replaced with NEWITEM.")
  3752.  
  3753. (docfun substitute-if function "
  3754. Args: (newitem test sequence
  3755.        &key (from-end nil) (start 0) (end (length sequence))
  3756.             (count most-positive-fixnum) (key #'identity))
  3757. Returns a sequence of the same kind as SEQUENCE with the same elements
  3758. except that all elements satisfying TEST are replaced with NEWITEM.")
  3759.  
  3760. (docfun substitute-if-not function "
  3761. Args: (new test sequence
  3762.        &key (from-end nil) (start 0) (end (length sequence))
  3763.             (count most-positive-fixnum) (key #'identity))
  3764. Returns a sequence of the same kind as SEQUENCE with the same elements
  3765. except that all elements not satisfying TEST are replaced with NEWITEM.")
  3766.  
  3767. (docfun subtypep function "
  3768. Args: (type1 type2)
  3769. Returns T if TYPE1 is a subtype of TYPE2; NIL otherwise.  If it could not
  3770. determine, then returns NIL as the second value.  Otherwise, the second value
  3771. is T.")
  3772.  
  3773. (docfun svref function "
  3774. Args: (simple-vector index)
  3775. Returns the INDEX-th element of SIMPLE-VECTOR.")
  3776.  
  3777. (docfun sxhash function "
  3778. Args: (object)
  3779. Computes a hash code for OBJECT and returns it as an integer.")
  3780.  
  3781. (docfun symbol-function function "
  3782. Args: (symbol)
  3783. Returns the current global function definition named by SYMBOL.")
  3784.  
  3785. (docfun symbol-name function "
  3786. Args: (symbol)
  3787. Returns the print name of the symbol SYMBOL.")
  3788.  
  3789. (docfun symbol-package function "
  3790. Args: (symbol)
  3791. Returns the contents of the package cell of the symbol SYMBOL.")
  3792.  
  3793. (docfun symbol-plist function "
  3794. Args: (symbol)
  3795. Returns the property list of SYMBOL.")
  3796.  
  3797. (docfun symbol-value function "
  3798. Args: (symbol)
  3799. Returns the current value of the dynamic (special) variable named by SYMBOL.")
  3800.  
  3801. (docfun symbolp function "
  3802. Args: (x)
  3803. Returns T if X is a symbol; NIL otherwise.")
  3804.  
  3805. #+unix
  3806. (docfun system function "
  3807. Args: (string)
  3808. KCL specific: Executes a Shell command as if STRING is an input to the Shell.
  3809. Not all versions of KCL support this function.")
  3810.  
  3811. (doctype t "
  3812. The type T is a supertype of every type.")
  3813.  
  3814. (docvar t constant "
  3815. Holds T.")
  3816.  
  3817. (docfun tagbody special "
  3818. Syntax: (tagbody {tag | statement}*)
  3819. Executes STATEMENTs and returns NIL if it falls off the end.")
  3820.  
  3821. (docfun tailp function "
  3822. Args: (sublist list)
  3823. Returns T if SUBLIST is one of the conses in LIST; NIL otherwise.")
  3824.  
  3825. (docfun tan function "
  3826. Args: (radians)
  3827. Returns the tangent of RADIANS.")
  3828.  
  3829. (docfun tanh function "
  3830. Args: (number)
  3831. Returns the hyperbolic tangent of NUMBER.")
  3832.  
  3833. (docfun tenth function "
  3834. Args: (x)
  3835. Equivalent to (CADR (CDDDDR (CDDDDR X))).")
  3836.  
  3837. (docvar *terminal-io* variable "
  3838. The terminal I/O stream.")
  3839.  
  3840. #+aosvs
  3841. (docfun termination-message function "
  3842. Args: ()
  3843. KCL specific: Returns the termination message of the son as a string.
  3844. Only KCL/AOS supports this function.")
  3845.  
  3846. (docfun terpri function "
  3847. Args: (&optional (stream *standard-output*))
  3848. Outputs a newline character.")
  3849.  
  3850. (docfun the special "
  3851. Syntax: (the value-type form)
  3852. Declares that the value of FORM must be of VALUE-TYPE.  Signals an error if
  3853. this is not the case.")
  3854.  
  3855. (docfun third function "
  3856. Args: (x)
  3857. Equivalent to (CADDR X).")
  3858.  
  3859. (docfun throw special "
  3860. Syntax: (throw tag result)
  3861. Evaluates TAG and aborts the execution of the most recent CATCH form that sets
  3862. up a catcher with the same tag value.  The CATCH form returns whatever RESULT
  3863. returned.")
  3864.  
  3865. (docfun time macro "
  3866. Syntax: (time form)
  3867. Evaluates FORM and outputs timing statistics on *TRACE-OUTPUT*.")
  3868.  
  3869. (docfun trace macro "
  3870. Syntax: (trace {function-name}*)
  3871. Traces the specified functions.  With no FUNCTION-NAMEs, returns a list of
  3872. functions currently being traced.")
  3873.  
  3874. (docvar *trace-output* variable "
  3875. The trace output stream.")
  3876.  
  3877. (docfun tree-equal function "
  3878. Args: (x y &key (test #'eql) test-not)
  3879. Returns T if X and Y are isomorphic trees with identical leaves.")
  3880.  
  3881. (docfun truename function "
  3882. Args: (pathname)
  3883. Returns the pathname for the actual file described by PATHNAME.")
  3884.  
  3885. (docfun truncate function "
  3886. Args: (number &optional (divisor 1))
  3887. Returns NUMBER/DIVISOR as an integer, rounded toward 0.  The second returned
  3888. value is the remainder.")
  3889.  
  3890. (docfun type-of function "
  3891. Args: (x)
  3892. Returns the type of X.")
  3893.  
  3894. (docfun typecase macro "
  3895. Syntax: (typecase keyform {(type {form}*)}*)
  3896. Evaluates KEYFORM and tries to find the TYPE in which the value of KEYFORM
  3897. belongs.  If one is found, then evaluates FORMs that follow the KEY and
  3898. returns the value of the last FORM.  If not, simply returns NIL.")
  3899.  
  3900. (docfun typep function "
  3901. Args: (x type)
  3902. Returns T if X is of the type TYPE; NIL otherwise.")
  3903.  
  3904. (docfun unexport function "
  3905. Args: (symbols &optional (package *package*))
  3906. Makes SYMBOLS no longer accessible as external symbols in PACKAGE.  SYMBOLS
  3907. must be a list of symbols or a symbol.")
  3908.  
  3909. (docfun unintern function "
  3910. Args: (symbol &optional (package *package*))
  3911. Makes SYMBOL no longer present in PACKAGE.  Returns T if SYMBOL was present;
  3912. NIL otherwise.  If PACKAGE is the home package of SYMBOL, then makes SYMBOL
  3913. uninterned.")
  3914.  
  3915. (docfun union function "
  3916. Args: (list1 list2 &key (test #'eql) test-not (key #'identity))
  3917. Returns the union of LIST1 and LIST2.")
  3918.  
  3919. (docfun unless macro "
  3920. Syntax: (unless test {form}*)
  3921. If TEST evaluates to NIL, then evaluates FORMs as a PROGN.  If not,
  3922. simply returns NIL.")
  3923.  
  3924. (docfun unread-char function "
  3925. Args: (character &optional (stream *standard-input*))
  3926. Puts CHARACTER back on the front of the input stream STREAM.")
  3927.  
  3928. (docfun untrace macro "
  3929. Syntax: (untrace {function-name}*)
  3930. Removes tracing from the specified functions.  With no FUNCTION-NAMEs,
  3931. untraces all functions.")
  3932.  
  3933. (docfun unuse-package function "
  3934. Args: (packages-to-unuse &optional (package *package*))
  3935. Removes PACKAGES-TO-UNUSE from the use list for PACKAGE.")
  3936.  
  3937. (docfun unwind-protect special "
  3938. Syntax: (unwind-protect protected-form {cleanup-form}*)
  3939. Evaluates PROTECTED-FORM and returns whatever it returned.  Guarantees that
  3940. CLEANUP-FORMs be always evaluated before exiting from the UNWIND-PROTECT
  3941. form.")
  3942.  
  3943. (docfun upper-case-p function "
  3944. Args: (char)
  3945. Returns T if CHAR is an upper-case character; NIL otherwise.")
  3946.  
  3947. (docfun use-package function "
  3948. Args: (packages-to-use &optional (package *package*))
  3949. Adds all packages in PACKAGE-TO-USE list to the use list for PACKAGE so that
  3950. the external symbols of the used packages are available as internal symbols
  3951. in PACKAGE.")
  3952.  
  3953. (docfun user-homedir-pathname function "
  3954. Args: (&optional host)
  3955. Returns the home directory of the logged in user as a pathname.  HOST
  3956. is ignored.")
  3957.  
  3958. (docfun values function "
  3959. Args: (&rest args)
  3960. Returns ARGs in order, as values.")
  3961.  
  3962. (docfun values-list function "
  3963. Args: (list)
  3964. Returns all of the elements of LIST in order, as values.")
  3965.  
  3966. (doctype vector "
  3967. A vector is a one-dimensional array.  Strings and bit-vectors are kinds of
  3968. vectors.  Other vectors are called general vectors and are denoted as
  3969.     #(elem0 ... elemn)
  3970. where n is the length of the vector minus one.
  3971. Some vectors may be displaced to another vector, may have a fill pointer,
  3972. or may be adjusted its size.  Other vectors are called simple vectors.")
  3973.  
  3974. (docfun vector function "
  3975. Args: (&rest objects)
  3976. Constructs a Simple-Vector from the given objects.")
  3977.  
  3978. (docfun vector-pop function "
  3979. Args: (vector)
  3980. Attempts to decrease the fill-pointer of VECTOR by 1 and returns the element
  3981. pointed to by the new fill pointer.  Signals an error if the old value of
  3982. the fill pointer is 0.")
  3983.  
  3984. (docfun vector-push function "
  3985. Args: (new-element vector)
  3986. Attempts to set the element of ARRAY designated by its fill pointer to
  3987. NEW-ELEMENT and increments the fill pointer by one.  Returns NIL if the fill
  3988. pointer is too large.  Otherwise, returns the new fill pointer value.")
  3989.  
  3990. (docfun vector-push-extend function "
  3991. Args: (new-element vector &optional (extension (length vector)))
  3992. Similar to VECTOR-PUSH except that, if the fill pointer gets too large,
  3993. extends VECTOR rather then simply returns NIL.")
  3994.  
  3995. (docfun vectorp function "
  3996. Args: (x)
  3997. Returns T if X is a vector; NIL otherwise.")
  3998.  
  3999. (docfun warn function "
  4000. Args: (format-string &rest args)
  4001. Formats FORMAT-STRING and ARGs to *ERROR-OUTPUT* as a warning message.")
  4002.  
  4003. (docfun when macro "
  4004. Syntax: (when test {form}*)
  4005. If TEST evaluates to non-NIL, then evaluates FORMs as a PROGN.  If not,
  4006. simply returns NIL.")
  4007.  
  4008. (docfun with-input-from-string macro "
  4009. Syntax: (with-input-from-string (var string {keyword value}*) {decl}* {form}*)
  4010. Binds VAR to an input stream that returns characters from STRING and evaluates
  4011. the FORMs.  The stream is automatically closed on exit.  Allowed keywords are
  4012. :INDEX, :START, and :END.")
  4013.  
  4014. (docfun with-open-file macro "
  4015. Syntax: (with-open-file (stream filename {options}*) {decl}* {form}*)
  4016. Opens the file whose name is FILENAME, using OPTIONs, and binds the variable
  4017. STREAM to a stream to/from the file.  Then evaluates FORMs as a PROGN.
  4018. The file is automatically closed on exit.")
  4019.  
  4020. (docfun with-open-stream macro "
  4021. Syntax: (with-open-stream (var stream) {decl}* {form}*)
  4022. Evaluates FORMs as a PROGN with VAR bound to the value of STREAM.  The stream
  4023. is automatically closed on exit.")
  4024.  
  4025. (docfun with-output-to-string macro "
  4026. Syntax: (with-output-to-string (var [string]) {decl}* {form}*)
  4027. Binds VAR to a string output stream that puts characters into STRING, which
  4028. defaults to a new string.  The stream is automatically closed on exit and
  4029. the string is returned.")
  4030.  
  4031. (docfun write function "
  4032. Args: (object &key (stream *standard-output*) (escape *print-escape*)
  4033.                    (radix *print-radix*) (base *print-base*)
  4034.                    (circle *print-circle*) (pretty *print-pretty*)
  4035.                    (level *print-level*) (length *print-length*)
  4036.                    (case *print-case*) (array *print-array*)
  4037.                    (gensym *print-gensym*))
  4038. Prints OBJECT in the specified mode.  See the variable docs of *PRINT-...*
  4039. for the mode.")
  4040.  
  4041. (docfun write-byte function "
  4042. Args: (integer stream)
  4043. Outputs INTEGER to the binary stream STREAM.  Returns INTEGER.")
  4044.  
  4045. (docfun write-char function "
  4046. Args: (char &optional (stream *standard-output*))
  4047. Outputs CHAR and returns it.")
  4048.  
  4049. (docfun write-line function "
  4050. Args: (string &optional (stream *standard-output*)
  4051.               &key (start 0) (end (length string)))
  4052. Outputs STRING and then outputs a newline character.  Returns STRING.")
  4053.  
  4054. (docfun write-string function "
  4055. Args: (string &optional (stream *standard-output*)
  4056.               &key (start 0) (end (length string)))
  4057. Outputs STRING and returns it.")
  4058.  
  4059. (docfun write-to-string function "
  4060. Args: (object &key (escape *print-escape*) (radix *print-radix*)
  4061.                    (base *print-base*) (circle *print-circle*)
  4062.                    (pretty *print-pretty*) (level *print-level*)
  4063.                    (length *print-length*) (case *print-case*)
  4064.                    (array *print-array*) (gensym *print-gensym*))
  4065. Returns as a string the printed representation of OBJECT in the specified
  4066. mode.  See the variable docs of *PRINT-...* for the mode.")
  4067.  
  4068. (docfun y-or-n-p function "
  4069. Args: (&optional (format-string nil) &rest args)
  4070. Asks the user a question whose answer is either 'Y' or 'N'.  If FORMAT-STRING
  4071. is non-NIL, then FRESH-LINE operation is performed, a message is printed as
  4072. if FORMAT-STRING and ARGs were given to FORMAT, and then a prompt
  4073. \"(Y or N)\" is printed.  Otherwise, no prompt will appear.")
  4074.  
  4075. (docfun yes-or-no-p function "
  4076. Args: (&optional (format-string nil) &rest args)
  4077. Asks the user a question whose answer is either 'YES' or 'NO'.  If FORMAT-
  4078. STRING is non-NIL, then FRESH-LINE operation is performed, a message is
  4079. printed as if FORMAT-STRING and ARGs were given to FORMAT, and then a prompt
  4080. \"(Yes or No)\" is printed.  Otherwise, no prompt will appear.")
  4081.  
  4082. (docfun zerop function "
  4083. Args: (number)
  4084. Returns T if NUMBER = 0; NIL otherwise.")
  4085.  
  4086.  
  4087.  
  4088.  
  4089.  
  4090. ;;; System Internals
  4091.  
  4092. (docfun si:address function "
  4093. Args: (object)
  4094. KCL specific: Returns the address of the OBJECT as a fixnum.  The address of
  4095. an object depends on the version of KCL.  E.g. (SI:ADDRESS NIL) returns
  4096. 1879062044 on KCL/AOSVS dated March 14, 1986.")
  4097.  
  4098. (docfun si:argc function "
  4099. Args: ()
  4100. KCL specific: Returns the number of arguments on the command line that invoked
  4101. the KCL process.")
  4102.  
  4103. (docfun si:argv function "
  4104. Args: (fixnum)
  4105. KCL specific: Returns the FIXNUM-th argument on the command line that invoked
  4106. the KCL process.")
  4107.  
  4108. (docfun si:bds-val function "
  4109. Args: (i)
  4110. KCL specific: Returns the value of the i-th entity in the bind stack.")
  4111.  
  4112. (docfun si:bds-var function "
  4113. Args: (i)
  4114. KCL specific: Returns the symbol of the i-th entity in the bind stack.")
  4115.  
  4116. #+bsd
  4117. (docfun si:catch-bad-signals function "
  4118. Args: ()
  4119. KCL/BSD specific: Installs a signal catcher for bad signals:
  4120.     SIGILL, SIGIOT, SIGEMT, SIGBUS, SIGSEGV, SIGSYS.
  4121. The signal catcher, upon catching the signal, signals an error (and enter
  4122. the break-level).  Since the internal memory of KCL may be broken, the user
  4123. should check the signal and exit from KCL if necessary.  When the signal
  4124. is caught during garbage collection, KCL terminates immediately.")
  4125.  
  4126. #+unix
  4127. (docfun si:chdir function "
  4128. Args: (pathname)
  4129. KCL/UNIX specific: Changes the current working directory to the specified
  4130. pathname.")
  4131.  
  4132. (docfun si:compiled-function-name function "
  4133. Args: (compiled-function-object)
  4134. KCL specific: Returns the name of the COMPILED-FUNCTION-OBJECT.")
  4135.  
  4136. (docfun si:copy-stream function "
  4137. Args: (in-stream out-stream)
  4138. KCL specific: Copies IN-STREAM to OUT-STREAM until the end-of-file on IN-
  4139. STREAM.")
  4140.  
  4141. #+aosvs
  4142. (docfun si:create-ipc-file function "
  4143. Args: (pathname local-port-number)
  4144. KCL/AOSVS specific: Creates an IPC file with the name PATHNAME and with
  4145. the specified LOCAL-PORT-NUMBER.  LOCAL-PORT-NUMBER should be a fixxnum.")
  4146.  
  4147. (docvar si:*default-time-zone* variable "
  4148. KCL specific: Holds the default time zone.  The initial value of SI:*DEFAULT-
  4149. TIME-ZONE* is -9 (the time zone of Japan).")
  4150.  
  4151. (docfun si:displaced-array-p function "
  4152. Args (array)
  4153. KCL specific: Returns T if the ARRAY is a displaced array; NIL otherwise.")
  4154.  
  4155. (docfun si:frs-bds function "
  4156. Args: (i)
  4157. KCL specific: Returns the bind stack index of the i-th entity in the frame
  4158. stack.")
  4159.  
  4160. (docfun si:frs-ihs function "
  4161. Args: (i)
  4162. KCL specific: Returns the invocation history stack index of the i-th entity
  4163. in the frame stack.")
  4164.  
  4165. (docfun si:frs-vs function "
  4166. Args: (i)
  4167. KCL specific: Returns the value stack index of the i-th entity in the frame
  4168. stack.")
  4169.  
  4170. (docfun si:error-set function "
  4171. Args: (form)
  4172. KCL specific: Evaluates the FORM in the null environment.  If the evaluation
  4173. of the FORM has successfully completed, SI:ERROR-SET returns NIL as the first
  4174. value and the result of the evaluation as the rest of the values.  If, in the
  4175. course of the evaluation, a non-local jump from the FORM is atempted,
  4176. SI:ERROR-SET traps the jump and returns the corresponding jump tag as its
  4177. value.")
  4178.  
  4179. #+bsd
  4180. (docfun si:faslink function "
  4181. Args: (file string)
  4182. KCL/BSD specific: Loads the FASL file FILE while linking the object files and
  4183. libraries specified by STRING.  For example,
  4184.     (faslink \"foo.o\" \"bar.o boo.o -lpixrect\")
  4185. loads foo.o while linking two object files (bar.o and boo.o) and the library
  4186. pixrect.  Usually, foo.o consists of the C language interface for the
  4187. functions defined in the object files or the libraries.")
  4188.  
  4189. (docfun si:fixnump function "
  4190. Args: (object)
  4191. KCL specific: Returns T if the OBJECT is a fixnum; NIL otherwise.")
  4192.  
  4193. (docvar si:*gbc-message* variable "
  4194. KCL specific: If the value of SI:*GBC-MESSAGE* is non-NIL, the garbage
  4195. collector prints some information on the terminal.  Usually SI:*GBC-MESSAGE*
  4196. should be set NIL.")
  4197.  
  4198. (docfun si:get-string-input-stream-index function "
  4199. Args: (string-input-stream)
  4200. KCL specific: Returns the current index of the STRING-INPUT-STREAM.")
  4201.  
  4202. #+unix
  4203. (docfun si:getenv function "
  4204. Args: (string)
  4205. KCL/UNIX specific: Returns the environment with the name STRING as a string;
  4206. if the environment specified by STRING is not found, returns NIL.")
  4207.  
  4208. (docfun si:get-hole-size function "
  4209. Args: ()
  4210. KCL specific: Returns as a fixnum the size of the memory hole (in pages).")
  4211.  
  4212. (docvar si:*ignore-eof-on-terminal-io* variable "
  4213. KCL specific: If the value of SI:*IGNORE-EOF-ON-TERMINAL-IO* is non-NIL, KCL
  4214. ignores the eof-character (usually ^D) on the terminal and the terminal never
  4215. becomes end-of-file.  The default value of SI:*IGNORE-EOF-ON-TERMINAL-IO* is
  4216. NIL.")
  4217.  
  4218. (docfun si:ihs-fun function "
  4219. Args: (i)
  4220. KCL specific: Returns the function value of the i-th entity in the invocation
  4221. history stack.")
  4222.  
  4223. (docfun si:ihs-vs function "
  4224. Args: (i)
  4225. KCL specific: Returns the value stack index of the i-th entity in the
  4226. invocation history stack.")
  4227.  
  4228. #+aosvs
  4229. (docfun si:ilkup function "
  4230. Args: (pathname)
  4231. KCL/AOSVS specific: Returns the global port number of the IPC file specified
  4232. by the PATHNAME.")
  4233.  
  4234. (docvar si:*indent-formatted-output* variable "
  4235. KCL specific: The FORMAT directive ~% indents the next line if the value of
  4236. this variable is non-NIL.  If NIL, ~% simply does Newline.")
  4237.  
  4238. (docfun si:init-system function "
  4239. Args: ()
  4240. KCL specific: Initializes the library and the compiler of KCL.  Since they
  4241. have already been initialized in the standard image of KCL, calling SI:INIT-
  4242. SYSTEM will cause an error.")
  4243.  
  4244. (docvar si:*interrupt-enable* variable "
  4245. KCL specific: If the value of SI:*INTERRUPT-ENABLE* is non-NIL, KCL signals
  4246. an error on the terminal interrupt (this is the default case).  If it is NIL,
  4247. KCL ignores the interrupt and assigns T to SI:*INTERRUPT-ENABLE*.")
  4248.  
  4249. #+aosvs
  4250. (docfun si:irec function "
  4251. Args: (global-port-number local-port-number string)
  4252. KCL/AOSVS specific: Receives a message from the specified port into the
  4253. STRING.  GLOBAL-PORT-NUMBER and LOCAL-PORT-NUMBER should be fixnums.  The
  4254. STRING should have a fill-pointer.")
  4255.  
  4256. #+aosvs
  4257. (docfun si:isend function "
  4258. Args: (global-port-number local-port-number string)
  4259. KCL/AOSVS specific: Sends a message in the STRING to the specified port.
  4260. GLOBAL-PORT-NUMBER and LOCAL-PORT-NUMBER should be fixnums.")
  4261.  
  4262. (docvar si:*lisp-maxpages* variable "
  4263. KCL specific: Holds the maximum number of pages (1 page = 2048 bytes) for the
  4264. KCL process.  The result of changing the value of SI:*LISP-MAXPAGES* is
  4265. unpredictable.")
  4266.  
  4267. (docfun si:*make-constant function "
  4268. Args: (symbol value)
  4269. KCL specific: Makes the SYMBOL a constant with the specified VALUE.")
  4270.  
  4271. (docfun si:*make-special function "
  4272. Args (symbol)
  4273. KCL specific: Makes the SYMBOL globally special.")
  4274.  
  4275. (docfun si:make-string-output-stream-from-string function "
  4276. Args (string)
  4277. KCL specific: Creates a string-output-stream corresponding to the STRING and
  4278. returns it.  The STRING should have a fill-pointer.")
  4279.  
  4280. (docfun si:nani function "
  4281. Args: (fixnum)
  4282. KCL specific: Returns the object in the address FIXNUM.  This function is
  4283. the inverse of SI:ADDRESS.  Although SI:ADDRESS is a harmless operation,
  4284. SI:NANI is quite dangerous and should be used with care.")
  4285.  
  4286. (docvar si:*notify-gbc* variable "
  4287. KCL specific: If the value of this variable is non-NIL, then the garbage
  4288. collector notifies that it begins to run whenever it is invoked.  Otherwise,
  4289. garbage collection begins silently.")
  4290.  
  4291. (docfun si:output-stream-string function "
  4292. Args: (string-output-stream)
  4293. KCL specific: Returns the string corresponding to the STRING-OUTPUT-STREAM.")
  4294.  
  4295. (docfun si:reset-gbc-count function "
  4296. Args: ()
  4297. KCL specific: Resets the counter of the garbage collector that records how
  4298. many times the garbage collector has been called for each implementation
  4299. type.")
  4300.  
  4301. (docfun si:reset-stack-limits function "
  4302. Args: ()
  4303. KCL specific: Resets the stack limits to the normal state.  When a stack has
  4304. overflowed, KCL extends the limit for the stack in order to execute the error
  4305. handler.  After processing the error, KCL resets the stack limit by calling
  4306. SI:RESET-STACK-LIMITS.")
  4307.  
  4308. (docfun si:save-system function "
  4309. Args: (pathname)
  4310. KCL specific: Saves the current KCL core imange into a program file specified
  4311. by PATHNAME.  This function differs from SAVE in that the contiguous and
  4312. relocatable areas are made permanent in the saved image.  Usually the
  4313. standard image of KCL interpreter/compiler is saved by SI:SAVE-SYSTEM.")
  4314.  
  4315. (docfun si:set-hole-size function "
  4316. Args: (fixnum)
  4317. KCL specific: Sets the size of the memory hole (in pages).")
  4318.  
  4319. (docfun si:specialp function "
  4320. Args: (symbol)
  4321. KCL specific: Returns T if the SYMBOL is a globally special variable; NIL
  4322. otherwise.")
  4323.  
  4324. (docfun si:string-concatenate function "
  4325. Args: (&rest strings)
  4326. KCL specific: Returns the result of concatenating the given STRINGS.")
  4327.  
  4328. (docfun si:string-to-object function "
  4329. Args: (string)
  4330. KCL specific: (SI:STRING-TO-OBJECT STRING) is equivalent to
  4331. (READ-FROM-STRING STRING), but much faster.")
  4332.  
  4333. (docfun si:structurep function "
  4334. Args: (object)
  4335. KCL specific: Returns T if the OBJECT is a structure; NIL otherwise.")
  4336.  
  4337. (docvar si:*system-directory* variable "
  4338. KCL specific: Holds the name of the system directory of KCL.")
  4339.  
  4340. (docfun si:top-level function "
  4341. Args: ()
  4342. KCL specific: Starts the standard top-level listner of KCL.  When the KCL
  4343. process is invoked, it calls SI:TOP-LEVEL by (FUNCALL 'SI:TOP-LEVEL).
  4344.      To change the top-level of KCL, redefine SI:TOP-LEVEL and save the core
  4345. imange in a file.  When the saved imange is invoked, it will start the
  4346. redefined top-level.")
  4347.  
  4348. (docfun si:universal-error-handler function "
  4349. Args: (error-name correctable function-name
  4350.        continue-format-string error-format-string
  4351.        &rest args)
  4352. KCL specific: Starts the error handler of KCL.  When an error is detected,
  4353. KCL calls SI:UNIVERSAL-ERROR-HANDLER with the specified arguments.
  4354. ERROR-NAME is the name of the error.  CORRECTABLE is T for a correctable
  4355. error and NIL for a fatal error.  FUNCTION-NAME is the name of the function
  4356. that caused the error.  CONTINUE-FORMAT-STRING and ERROR-FORMAT-STRING are
  4357. the format strings of the error message.  ARGS are the arguments to the
  4358. format strings.
  4359.      To change the error handler of KCL, redefine SI:UNIVERSAL-ERROR-
  4360. HANDLER.")
  4361.  
  4362. #+bsd
  4363. (docfun si:uncatch-bad-signals function "
  4364. Args: ()
  4365. KCL/BSD specific: Undoes the effect of SI:CATCH-BAD-SIGNALS.")
  4366.  
  4367. (docfun si:vs function "
  4368. Args: (i)
  4369. KCL specific: Returns the i-th entity in the value stack.")
  4370.  
  4371.